Migração de dados para o TaurusDB usando mysqldump
Você pode usar o mysqldump para migrar dados para o TaurusDB.
Precauções
A migração do banco de dados é realizada off-line. Antes da migração, você precisa interromper todas as aplicações que usam o banco de dados de origem.
Preparação para a migração
- Prepare um ECS na mesma VPC e sub-rede da instância de TaurusDB ou vincule um EIP à instância de TaurusDB.
- Para se conectar a uma instância por meio de uma rede privada, um ECS deve ser criado primeiro.
- Para se conectar a uma instância por meio de um EIP, você deve:
- Vincule o EIP à instância. Para obter detalhes, consulte Procedimento.
- Certifique-se de que o dispositivo local possa acessar o EIP que foi vinculado à instância.
- Instale o cliente mysql no ECS ou dispositivo preparado que pode acessar a instância de TaurusDB.
- Instale o cliente mysql seguindo as instruções fornecidas em Como posso instalar o cliente mysql?
- Certifique-se de que a versão do cliente mysql seja igual ou posterior à instalada na instância de TaurusDB. O banco de dados ou cliente de MySQL fornece mysqldump e mysql por padrão.
Exportação de dados
Antes de migrar dados do banco de dados de origem para a instância de TaurusDB, você precisa exportar dados do banco de dados de origem primeiro.

mysqldump deve corresponder à versão do mecanismo de BD.
- Faça logon no ECS ou dispositivo preparado que pode acessar a instância de TaurusDB.
- Use mysqldump para exportar metadados para um arquivo SQL.
Bancos de dados MySQL são necessários para gerenciamento de TaurusDB. Ao exportar metadados, não especifique --all-database, ou os bancos de dados ficarão indisponíveis.
mysqldump --databases <DB_NAME> --single-transaction --order-by-primary --hex-blob --no-data --routines --events --set-gtid-purged=OFF -u <DB_USER> -p -h <DB_ADDRESS> -P <DB_PORT> |sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' -e 's/DEFINER[ ]*=.*FUNCTION/FUNCTION/' -e 's/DEFINER[ ]*=.*PROCEDURE/PROCEDURE/' -e 's/DEFINER[ ]*=.*TRIGGER/TRIGGER/' -e 's/DEFINER[ ]*=.*EVENT/EVENT/' > <BACKUP_FILE>
- <DB_NAME> indica o nome do banco de dados a ser migrado.
- <DB_USER> indica o nome de usuário do banco de dados.
- <DB_ADDRESS> indica o endereço do banco de dados.
- <DB_PORT> indica a porta do banco de dados.
- <BACKUP_FILE> indica o nome do arquivo para o qual os dados serão exportados.
Digite a senha do banco de dados quando solicitado.
Exemplo:
mysqldump --databases gaussdb --single-transaction --order-by-primary --hex-blob --no-data --routines --events --set-gtid-purged=OFF -u root -p -h 192.*.*.* -P 3306 |sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' -e 's/DEFINER[ ]*=.*FUNCTION/FUNCTION/' -e 's/DEFINER[ ]*=.*PROCEDURE/PROCEDURE/' -e 's/DEFINER[ ]*=.*TRIGGER/TRIGGER/' -e 's/DEFINER[ ]*=.*EVENT/EVENT/' > dump-defs.sql
Enter password:
Depois que esse comando for executado, o arquivo dump-defs.sql será gerado.
- Use mysqldump para exportar dados para um arquivo SQL.
Bancos de dados MySQL são necessários para gerenciamento de TaurusDB. Ao exportar metadados, não especifique --all-database, ou os bancos de dados ficarão indisponíveis.
mysqldump --databases <DB_NAME> --single-transaction --hex-blob --set-gtid-purged=OFF --no-create-info --skip-triggers -u <DB_USER> -p -h <DB_ADDRESS> -P <DB_PORT> -r <BACKUP_FILE>
Para obter detalhes sobre os parâmetros no comando anterior, consulte 2.
Digite a senha do banco de dados quando solicitado.
Exemplo:
mysqldump --databases gaussdb --single-transaction --hex-blob --set-gtid-purged=OFF --no-create-info --skip-triggers -u root -p -h 192.*.*.* -P 3306 -r dump-data.sql
Depois que esse comando for executado, o arquivo dump-data.sql será gerado.
Importação de dados
Você pode usar um cliente para se conectar à instância de TaurusDB por meio de um ECS ou dispositivo que pode acessar a instância de TaurusDB e, em seguida, importar os arquivos SQL exportados para essa instância.

Se o banco de dados de origem chamar acionadores, procedimentos armazenados, funções ou eventos, você deverá definir log_bin_trust_function_creators como ON para o banco de dados de destino antes de importar os dados.
- Importe metadados para a instância de TaurusDB.
mysql -f -h <DB_ADDRESS> -P <DB_PORT> -u root -p < <BACKUP_DIR>/dump-defs.sql
- <DB_ADDRESS> indica o endereço IP da instância de TaurusDB.
- <DB_PORT> indica a porta da instância de TaurusDB.
- <BACKUP_DIR> indica o diretório onde dump-defs.sql será armazenado.
Exemplo:
mysql -f -h 172.*.*.* -P 3306 -u root -p < dump-defs.sql
Enter password:
- Importe dados para a instância de TaurusDB.
mysql -f -h <DB_ADDRESS> -P <DB_PORT> -u root -p < <BACKUP_DIR>/dump-data.sql
- <DB_ADDRESS> indica o endereço IP da instância de TaurusDB.
- <DB_PORT> indica a porta da instância de TaurusDB.
- <BACKUP_DIR> indica o diretório onde dump-data.sql será armazenado.
Exemplo:
mysql -f -h 172.*.*.* -P 3306 -u root -p < dump-data.sql
Enter password:
- Use a ferramenta MySQL para se conectar à instância de TaurusDB e exibir os resultados.
mysql> show databases;
Neste exemplo, o banco de dados chamado my_db foi importado.
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | my_db | | mysql | | performance_schema | +--------------------+ 4 rows in set (0.00 sec)