Configurar o banco de dados MySQL de origem para migrações únicas

Esta página descreve como configurar as seguintes instâncias de banco de dados de origem para migrações homogêneas únicas do MySQL:

Configurar uma origem do Cloud SQL para MySQL

Para configurar uma instância de origem do Cloud SQL para MySQL no processo de migração, faça o seguinte:

  1. Verifique se o banco de dados de origem contém metadados definidos por usuários com a DEFINER cláusula. Consulte Verificar metadados com uma cláusulaDEFINER.

    O Database Migration Service para migrações homogêneas do MySQL não migra contas de usuário e logins. As origens que contêm metadados definidos por contas de usuário com a DEFINER cláusula podem bloquear a migração.

  2. Se o banco de dados de origem contém objetos que referenciam tabelas nos mysql, performance_schema, information_schema, ndbinfo, ou sys esquemas de sistema, verifique se os bancos de dados de réplica também contêm essas tabelas de esquema de sistema.

    Se os bancos de dados de réplica não tiverem essas tabelas, o job de migração poderá falhar com a Unknown table in system schema .

  3. Crie uma conta de usuário de migração dedicada na instância. Consulte Criar um usuário na documentação do Cloud SQL. Verifique se as seguintes condições foram atendidas:

    • Você permite que a conta de usuário dedicada se conecte de qualquer host (host=%).
    • A senha da conta não excede 32 caracteres. Para mais informações sobre as limitações de comprimento de senha do usuário do MySQL, consulte o bug #43439 do MySQL.
  4. Atribua os privilégios necessários à conta de usuário de migração dedicada. Para migrações únicas, a lista completa de privilégios necessários depende de você fornecer seus próprios arquivos dump ou usar o recurso de despejo gerenciado do Database Migration Service:

    Despejo gerenciado

    Se você quiser que o Database Migration Service faça automaticamente o despejo completo do seu banco de dados de origem, atribua os seguintes privilégios à conta de usuário:

    • SELECT
    • SHOW VIEW
    • TRIGGER
    • RELOAD
    • Para versões do MySQL 8.0 ou mais recentes: verifique se a conta de migração não tem o privilégio BACKUP_ADMIN.

    Despejo manual

    Se você fornecer seus próprios arquivos dump criados com mysqldump, não será necessário atribuir privilégios extras à conta de usuário.

Configurar uma origem do MySQL auto-hospedado

Para configurar uma instância de origem do MySQL auto-hospedado no processo de migração, faça o seguinte:

  1. Verifique se todas as tabelas (exceto as tabelas em bancos de dados do sistema) usam o mecanismo de armazenamento InnoDB. Se você usar um mecanismo de armazenamento diferente, talvez seja necessário converter as tabelas. Para mais informações, consulte Como converter tabelas do MyISAM para o InnoDB.
  2. Verifique se o banco de dados de origem contém metadados definidos por usuários com a DEFINER cláusula. Consulte Verificar metadados com uma cláusulaDEFINER.

    O Database Migration Service para migrações homogêneas do MySQL não migra contas de usuário e logins. As origens que contêm metadados definidos por contas de usuário com a DEFINER cláusula podem bloquear a migração.

  3. Se o banco de dados de origem contém objetos que referenciam tabelas nos mysql, performance_schema, information_schema, ndbinfo, ou sys esquemas de sistema, verifique se os bancos de dados de réplica também contêm essas tabelas de esquema de sistema.

    Se os bancos de dados de réplica não tiverem essas tabelas, o job de migração poderá falhar com a Unknown table in system schema .

  4. Verifique se GTID_MODE está definido como ON ou OFF. Nenhum outro valor é aceito.

    O Database Migration Service exige que GTID_MODE esteja definido como ON nos seguintes cenários:

    Para mais informações sobre GTID_MODE, consulte Variável de sistema de ID da transação global.

  5. Crie uma conta de usuário de migração dedicada na instância. Consulte Instruções de gerenciamento de contas. Verifique se as seguintes condições foram atendidas:

    • Você permite que a conta de usuário dedicada se conecte de qualquer host (host=%).
    • A senha da conta não excede 32 caracteres. Para mais informações sobre as limitações de comprimento de senha do usuário do MySQL, consulte o bug #43439 do MySQL.
  6. Atribua os privilégios necessários à conta de usuário de migração dedicada. Para migrações únicas, a lista completa de privilégios necessários depende de você fornecer seus próprios arquivos dump ou usar o recurso de despejo gerenciado do Database Migration Service:

    Despejo gerenciado

    Se você quiser que o Database Migration Service faça automaticamente o despejo completo do seu banco de dados de origem, atribua os seguintes privilégios à conta de usuário:

    Despejo manual

    Se você fornecer seus próprios arquivos dump criados com mysqldump, não será necessário atribuir privilégios extras à conta de usuário.

Configurar uma origem do Amazon RDS para MySQL

Para configurar uma instância de origem do Amazon RDS para MySQL no processo de migração, faça o seguinte:

  1. O Amazon RDS para MySQL usa o mecanismo de armazenamento InnoDB por padrão, mas permite o uso de outros mecanismos de armazenamento. Verifique se todas as tabelas (exceto as tabelas em bancos de dados do sistema) usam o mecanismo de armazenamento InnoDB. Se você usar um mecanismo de armazenamento diferente, talvez seja necessário converter as tabelas. Para mais informações, consulte Como converter tabelas do MyISAM para o InnoDB.
  2. Verifique se o banco de dados de origem contém metadados definidos por usuários com a DEFINER cláusula. Consulte Verificar metadados com uma cláusulaDEFINER.

    O Database Migration Service para migrações homogêneas do MySQL não migra contas de usuário e logins. As origens que contêm metadados definidos por contas de usuário com a DEFINER cláusula podem bloquear a migração.

  3. Se o banco de dados de origem contém objetos que referenciam tabelas nos mysql, performance_schema, information_schema, ndbinfo, ou sys esquemas de sistema, verifique se os bancos de dados de réplica também contêm essas tabelas de esquema de sistema.

    Se os bancos de dados de réplica não tiverem essas tabelas, o job de migração poderá falhar com a Unknown table in system schema .

  4. Verifique se GTID_MODE está definido como ON ou OFF. Nenhum outro valor é aceito. O Amazon RDS para MySQL usa GTID_MODE = OFF por padrão.

    O Database Migration Service exige que GTID_MODE esteja definido como ON nos seguintes cenários:

    Para mais informações sobre GTID_MODE, consulte Variável de sistema de ID da transação global.

  5. Crie uma conta de usuário de migração dedicada na instância. Consulte Instruções de gerenciamento de contas. Verifique se as seguintes condições foram atendidas:

    • Você permite que a conta de usuário dedicada se conecte de qualquer host (host=%).
    • A senha da conta não excede 32 caracteres. Para mais informações sobre as limitações de comprimento de senha do usuário do MySQL, consulte o bug #43439 do MySQL.
  6. Atribua os privilégios necessários à conta de usuário de migração dedicada. Para migrações únicas, a lista completa de privilégios necessários depende de você fornecer seus próprios arquivos dump ou usar o recurso de despejo gerenciado do Database Migration Service:

    Despejo gerenciado

    Se você quiser que o Database Migration Service faça automaticamente o despejo completo do seu banco de dados de origem, atribua os seguintes privilégios à conta de usuário:

    Despejo manual

    Se você fornecer seus próprios arquivos dump criados com mysqldump, não será necessário atribuir privilégios extras à conta de usuário.

Configurar uma origem do Amazon Aurora para MySQL

Para configurar uma instância de origem do Amazon Aurora para MySQL no processo de migração, faça o seguinte:

  1. Verifique se o banco de dados de origem contém metadados definidos por usuários com a DEFINER cláusula. Consulte Verificar metadados com uma cláusulaDEFINER.

    O Database Migration Service para migrações homogêneas do MySQL não migra contas de usuário e logins. As origens que contêm metadados definidos por contas de usuário com a DEFINER cláusula podem bloquear a migração.

  2. Se o banco de dados de origem contém objetos que referenciam tabelas nos mysql, performance_schema, information_schema, ndbinfo, ou sys esquemas de sistema, verifique se os bancos de dados de réplica também contêm essas tabelas de esquema de sistema.

    Se os bancos de dados de réplica não tiverem essas tabelas, o job de migração poderá falhar com a Unknown table in system schema .

  3. Verifique se GTID_MODE está definido como ON ou OFF. Nenhum outro valor é aceito. O Amazon Aurora para MySQL usa GTID_MODE = OFF por padrão.

    O Database Migration Service exige que GTID_MODE esteja definido como ON nos seguintes cenários:

    Para mais informações sobre GTID_MODE, consulte Variável de sistema de ID da transação global.

  4. Crie uma conta de usuário de migração dedicada na instância. Consulte Instruções de gerenciamento de contas. Verifique se as seguintes condições foram atendidas:

    • Você permite que a conta de usuário dedicada se conecte de qualquer host (host=%).
    • A senha da conta não excede 32 caracteres. Para mais informações sobre as limitações de comprimento de senha do usuário do MySQL, consulte o bug #43439 do MySQL.
  5. Atribua os privilégios necessários à conta de usuário de migração dedicada. Para migrações únicas, a lista completa de privilégios necessários depende de você fornecer seus próprios arquivos dump ou usar o recurso de despejo gerenciado do Database Migration Service:

    Despejo gerenciado

    Se você quiser que o Database Migration Service faça automaticamente o despejo completo do seu banco de dados de origem, atribua os seguintes privilégios à conta de usuário:

    Despejo manual

    Se você fornecer seus próprios arquivos dump criados com mysqldump, não será necessário atribuir privilégios extras à conta de usuário.

Configurar uma origem do Microsoft Azure Database para MySQL

Para configurar uma instância de origem do Microsoft Azure Database para MySQL no processo de migração, faça o seguinte:

  1. Verifique se o banco de dados de origem contém metadados definidos por usuários com a DEFINER cláusula. Consulte Verificar metadados com uma cláusulaDEFINER.

    O Database Migration Service para migrações homogêneas do MySQL não migra contas de usuário e logins. As origens que contêm metadados definidos por contas de usuário com a DEFINER cláusula podem bloquear a migração.

  2. Se o banco de dados de origem contém objetos que referenciam tabelas nos mysql, performance_schema, information_schema, ndbinfo, ou sys esquemas de sistema, verifique se os bancos de dados de réplica também contêm essas tabelas de esquema de sistema.

    Se os bancos de dados de réplica não tiverem essas tabelas, o job de migração poderá falhar com a Unknown table in system schema .

  3. Verifique se GTID_MODE está definido como ON ou OFF. Nenhum outro valor é aceito. O Microsoft Azure Database para MySQL usa GTID_MODE = OFF por padrão.

    O Database Migration Service exige que GTID_MODE esteja definido como ON nos seguintes cenários:

    Para mais informações sobre GTID_MODE, consulte Variável de sistema de ID da transação global.

  4. Verifique o valor da configuração require_secure_transport.

    Por padrão, os bancos de dados do Microsoft Azure exigem criptografia SSL/TLS para todas as conexões de entrada. Dependendo do valor require_secure_transport, use uma das seguintes configurações de criptografia ao criar o perfil de conexão de origem:

    • Se require_secure_transport estiver definido como on, selecione Básico, TLS ou mTLS.
    • Se require_secure_transport estiver definido como off, selecione Nenhum.
  5. Crie uma conta de usuário de migração dedicada na instância. Consulte Instruções de gerenciamento de contas. Verifique se as seguintes condições foram atendidas:

    • Você permite que a conta de usuário dedicada se conecte de qualquer host (host=%).
    • A senha da conta não excede 32 caracteres. Para mais informações sobre as limitações de comprimento de senha do usuário do MySQL, consulte o bug #43439 do MySQL.
  6. Atribua os privilégios necessários à conta de usuário de migração dedicada. Para migrações únicas, a lista completa de privilégios necessários depende de você fornecer seus próprios arquivos dump ou usar o recurso de despejo gerenciado do Database Migration Service:

    Despejo gerenciado

    Se você quiser que o Database Migration Service faça automaticamente o despejo completo do seu banco de dados de origem, atribua os seguintes privilégios à conta de usuário:

    Despejo manual

    Se você fornecer seus próprios arquivos dump criados com mysqldump, não será necessário atribuir privilégios extras à conta de usuário.

A seguir

Para conferir um tutorial completo e detalhado sobre migração homogênea do Cloud SQL para MySQL, consulte Introdução às migrações do Cloud SQL para MySQL.