Como exportar um banco de dados MySQL usando mysqldump
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
É possível executar o utilitário mysqldump diretamente no banco de dados MySQL,
usando as opções necessárias. No entanto, se você estiver exportando para
importar os dados para um banco de dados do Cloud SQL, use o utilitário mysqldump
com as seguintes flags:
--databases
Especifique uma lista explícita de bancos de dados a serem exportados. Essa lista não
pode conter os bancos de dados do sistema (sys, mysql, performance_schema e
information_schema).
--hex-blob
Se o banco de dados tiver campos binários, use essa flag para
garantir que eles sejam importados corretamente.
--single-transaction
Inicia uma transação antes de executar. Em vez de bloquear todo o banco de dados,
isso permite que o mysqldump leia o banco de dados no estado atual,
criando um despejo de dados consistente.
--routines
Para incluir funções e procedimentos armazenados.
Ao usar a versão 8 ou mais recente do mysqldump para exportar versões de bancos de dados do MySQL anteriores à 8: --column-statistics=0
Essa flag remove a tabela COLUMN_STATISTICS da exportação do banco de dados para evitar o erro Unknown table 'COLUMN_STATISTICS' in information_schema (1109). Para saber mais, consulte Como diagnosticar problemas.
Também é recomendável usar as seguintes flags:
--no-autocommit
--default-character-set=utf8mb4
--master-data
Em uma máquina com conectividade de rede para o servidor MySQL, execute o seguinte
comando:
Além disso, configure instâncias RDS para reter binlogs por mais tempo.
Esse comando pode se parecer com o seguinte exemplo:
# Sets the retention period to one week.callmysql.rds_set_configuration('binlog retention hours',168);
Substitua [PROPERTIES_IN_BRACKETS] pelos seguintes valores:
Propriedade
Valor
[SOURCE_ADDR]
O endereço IPv4 ou o nome do host do servidor de banco de dados de origem.
[SOURCE_PORT]
A porta do servidor de banco de dados de origem.
[USERNAME]
A conta de usuário do MySQL.
[DBS]
Uma lista separada por espaços dos bancos de dados no servidor de banco de dados de origem
para incluir no dump. Use o comando SHOW DATABASES do MySQL para
listar seus bancos de dados.
[BUCKET_NAME]
O bucket no Cloud Storage criado pelo usuário e usado para armazenar o arquivo dump (por exemplo, replica-bucket).
[DUMP_FILENAME]
O nome do arquivo do despejo, que termina com a extensão .gz (por exemplo, source-database.sql.gz).
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-18 UTC."],[[["\u003cp\u003eIf using the Database Migration Service API, ensure \u003ccode\u003emysqldump\u003c/code\u003e is used to update the dump when making REST API calls.\u003c/p\u003e\n"],["\u003cp\u003eWhen exporting to Cloud SQL, use \u003ccode\u003emysqldump\u003c/code\u003e with flags such as \u003ccode\u003e--databases\u003c/code\u003e (excluding system databases), \u003ccode\u003e--hex-blob\u003c/code\u003e for binary fields, \u003ccode\u003e--single-transaction\u003c/code\u003e for consistency, and \u003ccode\u003e--routines\u003c/code\u003e for stored procedures/functions, as well as \u003ccode\u003e--column-statistics=0\u003c/code\u003e if you are on \u003ccode\u003emysqldump\u003c/code\u003e version 8 or later and the database is older than version 8.\u003c/p\u003e\n"],["\u003cp\u003eWhile \u003ccode\u003emysqldump\u003c/code\u003e is running, avoid DDL operations on the database to prevent inconsistencies in the export file.\u003c/p\u003e\n"],["\u003cp\u003eWhen dealing with Relational Database Service (RDS) for MySQL, note that the \u003ccode\u003emaster-data\u003c/code\u003e property is unsupported, and if the source database supports GTID, use \u003ccode\u003e--set-gtid-purged=on\u003c/code\u003e; also be sure to use GTID when manually migrating.\u003c/p\u003e\n"],["\u003cp\u003eWhen calling \u003ccode\u003emysqldump\u003c/code\u003e, make sure to properly replace the \u003ccode\u003e[PROPERTIES_IN_BRACKETS]\u003c/code\u003e values with proper values such as \u003ccode\u003e[SOURCE_ADDR]\u003c/code\u003e, \u003ccode\u003e[SOURCE_PORT]\u003c/code\u003e, \u003ccode\u003e[USERNAME]\u003c/code\u003e, \u003ccode\u003e[DBS]\u003c/code\u003e, \u003ccode\u003e[BUCKET_NAME]\u003c/code\u003e, and \u003ccode\u003e[DUMP_FILENAME]\u003c/code\u003e, and be mindful that the \u003ccode\u003egzip\u003c/code\u003e command may not be ideal if your database contains non-compressible data.\u003c/p\u003e\n"]]],[],null,[]]