Migrar seu Banco de Dados do Azure para MySQL - Banco de dados Servidor Flexível usando importação e exportação
APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor Único Banco de Dados do Azure para MySQL - Servidor Flexível
Importante
O servidor único do Banco de Dados do Azure para MySQL está no caminho de desativação. É altamente recomendável que você atualize para o Banco de Dados do Azure para o servidor flexível MySQL. Para obter mais informações sobre como migrar para o Banco de Dados do Azure para servidor flexível MySQL, consulte O que está acontecendo com o Banco de Dados do Azure para Servidor Único MySQL?
Este artigo explica duas abordagens comuns para importar e exportar dados para um Banco de Dados do Azure para instância do Servidor Flexível MySQL usando o MySQL Workbench.
Para obter orientações detalhadas e abrangentes sobre migração, consulte os recursos do guia de migração.
Para outros cenários de migração, consulte o Guia de Migração de Banco de Dados.
Pré-requisitos
Antes de começar a migrar seu banco de dados MySQL, você precisa:
- Crie um Banco de Dados do Azure para a instância do Servidor Flexível MySQL usando o portal do Azure.
- Baixe e instale o MySQL Workbench ou outra ferramenta MySQL de terceiros para importação e exportação.
Criar um banco de dados no Banco de Dados do Azure para a instância do Servidor Flexível MySQL
Crie um banco de dados vazio no Banco de Dados do Azure para a instância do Servidor Flexível MySQL usando o MySQL Workbench, Toad ou Navicat. O banco de dados pode ter o mesmo nome que o banco de dados que contém os dados despejados ou você pode criar um banco de dados com um nome diferente.
Para se conectar, faça o seguinte:
No portal do Azure, procure as informações de conexão no painel Visão geral da sua instância do Servidor Flexível do Banco de Dados do Azure para MySQL.
Adicione as informações de conexão ao MySQL Workbench.
Determinar quando usar técnicas de importação e exportação
Gorjeta
Para cenários em que você deseja despejar e restaurar todo o banco de dados, use a abordagem de despejo e restauração .
Nos cenários a seguir, use as ferramentas MySQL para importar e exportar bancos de dados para seu banco de dados MySQL. Para outras ferramentas, vá para a seção "Métodos de migração" (página 22) do guia de migração do MySQL para o Banco de Dados do Azure.
- Quando você precisa escolher seletivamente algumas tabelas para importar de um banco de dados MySQL existente para seu banco de dados do Azure Database for MySQL Flexible Server, é melhor usar a técnica de importação e exportação. Ao fazer isso, você pode omitir quaisquer tabelas desnecessárias da migração para economizar tempo e recursos. Por exemplo, use o
--include-tables
switch ou--exclude-tables
com mysqlpump, e o--tables
switch com mysqldump. - Quando você estiver movendo objetos de banco de dados diferentes de tabelas, crie explicitamente esses objetos. Inclua restrições (chave primária, chave estrangeira e índices), exibições, funções, procedimentos, gatilhos e quaisquer outros objetos de banco de dados que você deseja migrar.
- Quando você estiver migrando dados de fontes de dados externas que não sejam um banco de dados MySQL, crie arquivos simples e importe-os usando mysqlimport.
Importante
Tanto o Banco de Dados do Azure para servidor único MySQL quanto o Banco de Dados do Azure para Servidor Flexível MySQL oferecem suporte apenas ao mecanismo de armazenamento InnoDB. Certifique-se de que todas as tabelas no banco de dados usam o mecanismo de armazenamento InnoDB quando você estiver carregando dados em sua instância do Banco de Dados do Azure para o Servidor Flexível MySQL.
Se o banco de dados de origem usar outro mecanismo de armazenamento, converta para o mecanismo InnoDB antes de migrar o banco de dados. Por exemplo, se você tiver um WordPress ou aplicativo Web que usa o mecanismo MyISAM, primeiro converta as tabelas migrando os dados para tabelas InnoDB. Use a cláusula ENGINE=INNODB
para definir o mecanismo para criar uma tabela e, em seguida, transfira os dados para a tabela compatível antes da migração.
INSERT INTO innodb_table SELECT * FROM myisam_table ORDER BY primary_key_columns
Recomendações de desempenho para importação e exportação
Para um desempenho ideal de importação e exportação de dados, recomendamos que você faça o seguinte:
- Crie índices clusterizados e chaves primárias antes de carregar dados. Carregue os dados na ordem da chave primária.
- Atrase a criação de índices secundários até que os dados sejam carregados.
- Desative as restrições de chave estrangeira antes de carregar os dados. A desativação de verificações de chaves estrangeiras proporciona ganhos de desempenho significativos. Habilite as restrições e verifique os dados após a carga para garantir a integridade referencial.
- Carregue dados em paralelo. Evite muito paralelismo que faria com que você atingisse um limite de recursos e monitore recursos usando as métricas disponíveis no portal do Azure.
- Use tabelas particionadas quando apropriado.
Importar e exportar dados usando o MySQL Workbench
Há duas maneiras de exportar e importar dados no MySQL Workbench: no menu de contexto do navegador de objetos ou no painel Navegador. Cada método serve um propósito diferente.
Nota
Se você estiver adicionando uma conexão ao Banco de Dados do Azure para servidor único MySQL ou ao Banco de Dados do Azure para Servidor Flexível MySQL no MySQL Workbench, faça o seguinte:
- Para o Banco de Dados do Azure para servidor único MySQL, verifique se o nome de usuário está no formato <username@servername>.
- Para o Banco de Dados do Azure para Servidor Flexível MySQL, use <apenas o nome> de usuário. Se você usar <username@servername> para se conectar, a conexão falhará.
Execute os assistentes de exportação e importação de dados de tabela no menu de contexto do pesquisador de objetos
Os assistentes de dados de tabela suportam operações de importação e exportação usando arquivos CSV e JSON. Os assistentes incluem várias opções de configuração, como separadores, seleção de colunas e seleção de codificação. Você pode executar cada assistente em servidores MySQL locais ou conectados remotamente. A ação de importação inclui mapeamento de tabela, coluna e tipo.
Para acessar esses assistentes no menu de contexto do pesquisador de objetos, clique com o botão direito do mouse em uma tabela e selecione Assistente para Exportação de Dados de Tabela ou Assistente de Importação de Dados de Tabela.
O assistente de exportação de dados de tabela
Para exportar uma tabela para um arquivo CSV:
- Clique com o botão direito do mouse na tabela do banco de dados a ser exportado.
- Selecione Assistente para Exportação de Dados de Tabela. Selecione as colunas a serem exportadas, o deslocamento da linha (se houver) e a contagem (se houver).
- No painel Selecionar dados para exportação, selecione Avançar. Selecione o caminho do arquivo, CSV ou tipo de arquivo JSON. Selecione também o separador de linha, o método de delimitação de cadeias de caracteres e o separador de campo.
- No painel Selecionar local do arquivo de saída, selecione Avançar.
- No painel Exportar dados, selecione Avançar.
O assistente de importação de dados de tabela
Para importar uma tabela de um arquivo CSV:
- Clique com o botão direito do mouse na tabela do banco de dados a ser importado.
- Procure e selecione o arquivo CSV a ser importado e, em seguida, selecione Avançar.
- Selecione a tabela de destino (nova ou existente), marque ou desmarque a caixa de seleção Truncar tabela antes de importar e selecione Avançar.
- Selecione a codificação e as colunas a serem importadas e, em seguida, selecione Avançar.
- No painel Importar dados, selecione Avançar. O assistente importa os dados.
Execute os assistentes de exportação e importação de dados SQL a partir do painel Navegador
Use um assistente para exportar ou importar dados SQL gerados a partir do MySQL Workbench ou do comando mysqldump. Pode aceder aos assistentes a partir do painel Navegador ou pode selecionar Servidor no menu principal.
Exportar Dados
Você pode usar o painel Exportação de dados para exportar seus dados MySQL.
No MySQL Workbench, no painel Navegador , selecione Exportação de dados.
No painel Exportação de Dados, selecione cada esquema que você deseja exportar.
Para cada esquema, você pode selecionar objetos de esquema específicos ou tabelas para exportar. As opções de configuração incluem exportar para uma pasta de projeto ou um arquivo SQL independente, despejar rotinas e eventos armazenados ou ignorar dados de tabela.
Como alternativa, use Exportar um conjunto de resultados para exportar um conjunto de resultados específico no editor SQL para outro formato, como CSV, JSON, HTML e XML.
Selecione os objetos de banco de dados a serem exportados e configure as opções relacionadas.
Selecione Atualizar para carregar os objetos atuais.
Opcionalmente, selecione Opções avançadas no canto superior direito para refinar a operação de exportação. Por exemplo, adicione bloqueios de tabela, use
replace
em vez deinsert
instruções e aspas identificadores com caracteres de backtick.Selecione Iniciar exportação para iniciar o processo de exportação.
Importar dados
Você pode usar o painel Importação de Dados para importar ou restaurar dados exportados da operação de exportação de dados ou do comando mysqldump.
- No MySQL Workbench, no painel Navegador , selecione Importação/Restauração de Dados.
- Selecione a pasta do projeto ou o arquivo SQL independente, selecione o esquema para o qual importar ou selecione o botão Novo para definir um novo esquema.
- Selecione Iniciar importação para iniciar o processo de importação.
Próximos passos
- Para outra abordagem de migração, consulte Migrar seu banco de dados MySQL para o Banco de Dados do Azure para o Servidor Flexível MySQL usando dump e restauração.
- Para obter mais informações sobre como migrar bancos de dados para o Banco de Dados do Azure para o Servidor Flexível MySQL, consulte o Guia de Migração de Banco de Dados.