Migração de banco de dados MySQL usando Python

Você pode migrar bancos de dados MySQL de um servidor para outro usando o script de migração de banco de dados MySQL. Esse script é aplicável a qualquer plataforma:

  • infraestrutura clássica de IBM Cloud® para IBM Cloud VPC
  • No local para IBM Cloud VPC
  • Outros provedores de serviços de nuvem para IBM Cloud VPC

Pré-requisitos

Analise os seguintes pré-requisitos antes de iniciar a migração:

  1. Configure um bucket IBM Cloud Object Storage.
  2. Certifique-se de que você tenha acesso de gravação ao bucket Object Storage.
  3. Certifique-se de que você tenha uma conexão com o servidor de origem e de destino do seu sistema.
  4. Certifique-se de que Python3 (versão 3.0 ) e Pip3 estejam instalados em seu sistema.

Diagrama de visão geral da migração

Diagrama de visão geral da migração
Diagrama de visão geral da migração

Clonar e executar o script de migração do banco de dados

Conclua as etapas a seguir para clonar e executar o script de migração do banco de dados:

  1. Execute o seguinte comando para clonar o repositório público GitHub.

    git clone https://github.com/IBM-Cloud/vpc-migration-tools.git
    
  2. Vá para a pasta mysql.

    cd vpc-migration-tools/db-migration/mysql
    
  3. Instale os módulos de pré-requisitos para Python executando os seguintes comandos:

    pip3 install -U pip setuptools
    
    pip3 install -r requirements.txt
    

    setuptools facilita o empacotamento de projetos Python, aprimorando a biblioteca padrão Python, distutils. Os arquivos requirements.txt instalam as bibliotecas Python que são necessárias no script.

  4. Execute o script de migração do banco de dados:

    python3 db_migration.py
    

Fornecer detalhes da migração

Depois de executar o script de migração do banco de dados, você precisa fornecer os detalhes dos seguintes parâmetros:

  • Object Storage
  • Servidor de Origem
  • Banco de dados do servidor de origem
  • Servidor de destino
  • Banco de dados do servidor de destino

Detalhes Object Storage

O bucket Object Storage atua como armazenamento centralizado para a origem e o servidor de destino. Ao usar o utilitário s3fs, o bucket é montado como um sistema de arquivos no servidor de origem e no servidor de destino. A origem usa o bucket para armazenar o backup do banco de dados e o destino usa o bucket para recuperar o backup do banco de dados, o que minimiza a duração da migração.

Conclua as etapas a seguir para montar o bucket Object Storage:

  1. Insira o nome do bucket Object Storage ; por exemplo, my-db-bucket. O bucket já deve estar provisionado.
  2. Digite o ponto de extremidade Object Storage, que é o local do bucket; por exemplo, https://s3.dal.us.cloud-object-storage.appdomain.cloud. Para obter mais informações, consulte Pontos de extremidade e locais de armazenamento.
  3. Insira sua chave de API do IBM Cloud. Para obter mais informações, consulte Criação de uma IBM Cloud Chave de API.

Detalhes do servidor de origem

Depois de montar o bucket Object Storage, você precisa fornecer os detalhes do servidor de origem:

  1. Digite o endereço IP ou o nome do host do servidor de origem. O servidor de origem é o banco de dados MySQL que precisa ser migrado.
  2. Digite as credenciais de login do servidor de origem. O script precisa ser autenticado com o nome de usuário e a senha. Certifique-se de que os privilégios de usuário sejam equivalentes aos de root.

Detalhes do banco de dados do servidor de origem

  1. Insira os detalhes da conexão MySQL do servidor de origem, como o nome de usuário do aplicativo MySQL, que é root por padrão.
  2. Digite sua senha do MySQL, que o autentica para executar ações no banco de dados MySQL que você deseja migrar.
  3. Digite o nome do banco de dados que você deseja migrar.

Detalhes do servidor de destino

Depois de fornecer os detalhes do servidor de origem e do banco de dados do servidor de origem, você precisa fornecer os detalhes do servidor de destino:

  1. Digite o endereço IP ou o nome do host do servidor de destino. O servidor de destino é onde o banco de dados MySQL deve ser migrado.
  2. Digite as credenciais de login do servidor de destino. Da mesma forma, para o servidor de origem, o script precisa ser autenticado com o nome de usuário e a senha. Certifique-se de que o privilégio do usuário seja equivalente ao root.

Detalhes do banco de dados do servidor de destino

  1. Insira os detalhes da conexão MySQL do servidor de destino, como o nome de usuário do aplicativo MySQL, que é root por padrão.
  2. Digite sua senha do MySQL, que o autentica para executar ações de restauração do banco de dados.
  3. Digite o nome do banco de dados do servidor de origem.
  4. Digite o nome do banco de dados de destino. Por padrão, esse script obtém o nome do banco de dados a partir do nome do banco de dados de origem. Se você quiser ter um nome de banco de dados diferente para a migração, poderá fornecer a entrada de acordo com sua necessidade.
  5. Após uma migração bem-sucedida do banco de dados, é exibida uma mensagem de "concluído".