What is the most efficient way to export data from Azure Mysql?

Viewed 946

I have searched high and low, but it seems like mysqldump and "select ... into outfile" are both intentionally blocked by not allowing file permissions to the db admin. Wouldn't it save a lot more server resources to allow file permissions than to disallow them? Any other import/export method I can find uses executes much slower, especially with tables that have millions of rows. Does anyone know a better way? I find it hard to believe Azure left no good way to do this common task.

2 Answers

You did not list the other options you found to be slow, but have you thought about using Azure Data Factory:

Use Data Factory, a cloud data integration service, to compose data storage, movement, and processing services into automated data pipelines.

It supports exporting data from Azure MySQL and 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 Data Factory allows you to define mappings (optional!), and / or transform the data as needed. It has a pay per use pricing model.

You can start an export manually or using a schedule using the .Net or Python SKD , the Rest api or Powershell.

It seems you are looking to export the data to a file, so Azure Blob Storage or Azure Files are likely to be a good destination. FTP or the local file system are also possible.

"SELECT INTO ... OUTFILE" we can achieve this using mysqlworkbench

1.Select the table 2.Table Data export wizard 3.export the data in the form of csv or Json

Related