Migrar seu Banco de Dados do Azure para MySQL - Banco de Dados do 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 Banco de Dados do Azure para servidor único 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 o 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 uma instância de servidor flexível do Banco de Dados do Azure para MySQL usando o MySQL Workbench.

Para obter diretrizes de migração detalhadas e abrangentes, confira o tópico Recursos do guia de migração.

Para outros cenários, confira o Guia de Migração de Banco de Dados.

Pré-requisitos

Antes de começar a migrar seu banco de dados MySQL para o SQL Server, é necessário:

Criar um banco de dados no Banco de Dados do Azure para instância de servidor flexível do MySQL

Crie um banco de dados vazio na instância do servidor flexível do Banco de Dados do Azure para MySQL usando o MySQL Workbench, o Toad ou o Navicat. O banco de dados pode ter o mesmo nome do banco de dados que contém os dados despejados ou você pode criar um banco de dados com um nome diferente.

Siga as seguintes etapas para se conectar:

  1. No portal do Azure, procure as informações de conexão no painel Visão geral da instância de servidor flexível do Banco de Dados do Azure para MySQL.

    Screenshot of the Azure Database for MySQL flexible server instance connection information in the Azure portal.

  2. Adicione as informações de conexão ao MySQL Workbench.

    Screenshot of the MySQL Workbench connection string.

Determinar quando usar técnicas de importação e exportação

Dica

Para cenários em que você deseja despejar e restaurar todo o banco de dados, use a abordagem de despejo e restauração.

Use ferramentas do MySQL para importar e exportar bancos de dados para o Banco de Dados MySQL do Azure nos cenários a seguir. Para outras ferramentas, acesse 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ê precisar escolher seletivamente algumas tabelas para importar de um banco de dados MySQL existente para seu banco de dados de servidor flexível do Banco de Dados do Azure para MySQL, é melhor usar a técnica de importação e exportação. Ao fazer isso, você pode omitir todas as tabelas desnecessárias da migração, para economizar tempo e recursos. Por exemplo, use a opção --include-tables ou --exclude-tables com mysqlpump e a opção--tables commysqldump.
  • Quando estiver movendo os objetos do banco de dados que não sejam tabelas, crie-os explicitamente. Inclua restrições (chave primária, chave estrangeira, índices), exibições, funções, procedimentos, gatilhos e todos os outros objetos do banco de dados que você deseja migrar.
  • Quando 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

O Banco de Dados do Azure para servidor único MySQL e 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 usem o mecanismo de armazenamento InnoDB quando você estiver carregando dados em sua instância de servidor flexível do Banco de Dados do Azure para MySQL.

Se o banco de dados de origem usar outro mecanismo de armazenamento, converta no mecanismo InnoDB antes de migrar o banco de dados. Por exemplo, se você tiver um aplicativo Web ou do WordPress que usa o mecanismo MyISAM, primeiro converta as tabelas migrando os dados para tabelas do 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 dos dados, recomendamos que você faça o seguinte:

  • Crie índices clusterizados e chaves primárias antes de carregar os dados. Carregue os dados na ordem de chave primária.
  • Atrase a criação de índices secundários até os dados serem carregados.
  • Desabilite restrições de chave estrangeira antes de carregar os dados. Desabilitar as verificações de chave estrangeira proporciona ganhos significativos de desempenho. Habilite as restrições e verifique os dados após o carregamento para garantir a integridade referencial.
  • Carregar dados em paralelo. Evite o excesso de paralelismo que poderá fazer com que você atinja um limite de recursos e monitore os 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 uma tem uma finalidade diferente.

Observação

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 servidor flexível do Banco de Dados do Azure para MySQL, use <somente o nome> de usuário. Se você usar <username@servername> para se conectar, a conexão falhará.

Assistentes de importação e exportação de dados de tabela no menu de contexto do pesquisador de objetos

Screenshot of the MySQL Workbench export and import wizard commands on the object browser's context menu.

Os assistentes de dados de tabela dão suporte à importação e exportação de operações usando arquivos CSV e JSON. Eles incluem várias opções de configuração, como separadores, seleção de coluna e seleção de codificação. Execute cada assistente em MySQL Servers locais ou remotamente conectados. A ação de importação inclui o 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 de exportação de dados de tabela ouassistente de importação de dados de tabela.

Assistente de Exportação de Dados de Tabela

Para exportar uma tabela para um arquivo CSV:

  1. Clique com o botão direito do mouse na tabela do banco de dados a ser exportada.
  2. Selecione Assistente de Exportação de Dados de Tabela. Selecione as colunas a serem exportadas, o deslocamento da linha (se houver) e a contagem (se houver).
  3. No painel Selecionar dados para exportação, clique em Avançar. Selecione o caminho do arquivo, o CSV ou o tipo de arquivo JSON. Selecione também o separador de linha, o método de delimitar cadeias de caracteres e o separador de campo.
  4. No painel Selecionar local do arquivo de saída, clique em Avançar.
  5. No painel exportar dados, selecione Avançar.

Assistente de Importação de Dados de Tabela

Para importar uma tabela de um arquivo CSV:

  1. Clique com o botão direito do mouse na tabela do banco de dados a ser importada.
  2. Procure e selecione o arquivo CSV a ser importado e, em seguida, clique no botão Avançar.
  3. Selecione a tabela de destino (nova ou existente) e marque ou desmarque a caixa de seleção Truncar tabela antes da importação e, em seguida, selecione Avançar.
  4. Selecione a codificação e as colunas a serem importadas e selecione o botão Avançar.
  5. No painel importar dados, selecione Avançar. O assistente importa os dados.

Assistentes de exportação e importação de dados do SQL no painel Navegador

Use um assistente para exportar ou importar o SQL gerado no MySQL Workbench ou gerado com o comando mysqldump. Você pode acessar os assistentes no painel navegador ou pode selecionar servidor no menu principal.

Exportar dados

Screenshot of using the Navigator pane to display the Data Export pane in MySQL Workbench.

Use a guia Exportação de Dados para exportar os dados do MySQL.

  1. No MySQL Workbench, no painel navegador, selecione exportação de dados.

  2. No painel exportação de dados, selecione cada esquema que você deseja exportar.

    Para cada esquema, você pode selecionar objetos ou tabelas de esquema específicos para exportar. As opções de configuração incluem a exportação para uma pasta de projeto ou um arquivo SQL independente, despejo de rotinas e eventos armazenados ou ignorar os dados da tabela.

    Como alternativa, use Exportar um Conjunto de Resultados para exportar um conjunto de resultados específico no editor de SQL para outro formato como CSV, JSON, HTML e XML.

  3. Selecione os objetos de banco de dados a serem exportados e configure as opções relacionadas.

  4. Clique em Atualizar para carregar os objetos atuais.

  5. Também há a opção de selecionar Opções avançadas no canto superior direito para refinar a operação de exportação. Por exemplo, para adicionar bloqueios de tabela, use instruções de replace em vez deinsert e identificadores de aspas com caracteres backtick.

  6. Clique em Iniciar Exportação para iniciar o processo de exportação.

Importar dados

Screenshot of using the Navigator pane to display the Data Import pane in MySQL Workbench.

Use a guia Importação de Dados para importar ou restaurar os dados exportados da operação de exportação de dados ou do comando mysqldump.

  1. No MySQL Workbench, no painel Navegador, selecione Importação/Restauração de dados.
  2. Selecione a pasta do projeto ou o arquivo SQL autossuficiente, selecione o esquema para importar ou selecione o botão Novo para definir um novo esquema.
  3. Clique em Iniciar Importação para iniciar o processo de importação.

Próximas etapas