我已经搜索了很多,但似乎 mysqldump 和“select ... into outfile”都被故意阻止,不允许数据库管理员的文件权限。允许文件权限不是比禁止文件权限节省更多的服务器资源吗?我发现的任何其他导入/导出方法的执行速度都要慢得多,尤其是对于具有数百万行的表。有谁知道更好的方法吗?我很难相信 Azure 没有留下好的方法来完成这项常见任务。
最佳答案
您没有列出您发现速度慢的其他选项,但您是否考虑过使用Azure Data Factory :
Use Data Factory, a cloud data integration service, to compose data storage, movement, and processing services into automated data pipelines.
支持从Azure MySQL导出数据和 MySQL :
You can copy data from MySQL database to any supported sink data store. For a list of data stores that are supported as sources/sinks by the copy activity, see Supported data stores and formats
Azure 数据工厂允许您定义映射(可选!),和/或根据需要转换数据。它有按使用付费的定价模型。
您可以手动启动导出,也可以使用 .Net 或 Python SKD、Rest api 或 Powershell 按计划启动导出。
您似乎希望将数据导出到文件中,因此 Azure Blob Storage或Azure Files很可能是一个不错的目的地。 FTP 或本地文件系统也是可能的。
关于mysql - 从 Azure Mysql 导出数据最有效的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53287066/