Migrar seus bancos de dados do SQL Server para o Cloud SQL para SQL Server

Esta página descreve como migrar seus bancos de dados do SQL Server para a instância do Cloud SQL para o SQL Server com Database Migration Service.

O processo de migração envolve as seguintes tarefas:

  1. Exportar o backup completo do banco de dados e os arquivos de registro de transações da instância de origem do SQL Server.

    Você também pode usar o backup diferencial opcional do banco de dados no processo de migração.

  2. Enviar os arquivos de backup para um bucket do Cloud Storage.

  3. Criação da instância de destino do Cloud SQL para SQL Server.

  4. Criar e executar o job de migração no Database Migration Service.

  5. Monitorar o progresso do job de migração com os recursos de observabilidade do Database Migration Service.

  6. Promover o job de migração após a migração completa dos dados.

Custos

Para migrações homogêneas para o Cloud SQL, o Database Migration Service é oferecido sem custo extra. No entanto, os preços do Cloud SQL e do Cloud Storage se aplicam a cobranças de rede e a entidades do Cloud SQL e do Cloud Storage criadas para fins de migração.

Neste documento, você vai usar os seguintes componentes faturáveis do Google Cloud:

  • Cloud Storage
  • Cloud SQL

Para gerar uma estimativa de custo baseada na projeção de uso, use a calculadora de preços.

Antes de começar

  1. Verifique se esse caminho de migração é totalmente compatível com seu cenário. Consulte Limitações conhecidas do SQL Server.
  2. Considere em qual região você quer criar o banco de dados de destino. O Database Migration Service é um produto totalmente regional, ou seja, todas as entidades relacionadas à migração (perfis de conexão de origem e destino, jobs de migração, bancos de dados de destino, buckets de armazenamento) precisam ser salvas em uma única região.
  3. No console do Google Cloud , na página do seletor de projetos, selecione ou crie um projeto do Google Cloud .

    Acessar o seletor de projetos

  4. Ative as APIs Database Migration Service, Compute Engine, Cloud Storage e Cloud SQL Admin.

    Ative as APIs

Funções exigidas

Para receber as permissões necessárias para realizar migrações homogêneas do SQL Server com Database Migration Service, peça ao administrador para conceder as funções do IAM necessárias no projeto para as seguintes contas envolvidas no processo de migração:

Para mais informações sobre como conceder papéis, consulte Gerenciar o acesso.

Esses papéis predefinidos contêm as permissões necessárias para realizar migrações homogêneas do SQL Server com Database Migration Service. Para conferir as permissões exatas necessárias, abra a seção Permissões necessárias:

Permissões necessárias

As permissões a seguir são necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service:

  • Conta de usuário que realiza a migração:
    • datamigration.*
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • cloudsql.operations.get
    • cloudsql.instances.create
    • cloudsql.instances.get
    • cloudsql.instances.list
    • cloudsql.instances.import
    • cloudsql.databases.get
    • cloudsql.databases.list
    • cloudsql.databases.delete
    • compute.machineTypes.list
    • compute.machineTypes.get
    • compute.projects.get
    • storage.buckets.create
    • storage.buckets.list
  • Conta de serviço do Database Migration Service:
    • datamigration.*
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • cloudsql.instances.create
    • cloudsql.instances.get
    • cloudsql.instances.list
    • cloudsql.instances.executeSql
    • storage.objects.create
    • storage.objects.list

Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.

Preparar os dados de origem

Para preparar os dados de origem para a migração, siga estas etapas:

  1. Considere sua estratégia de backup para o processo de migração. Database Migration Service oferece suporte ao uso de um backup diferencial e dos arquivos de registro de transações para migrar dados que aparecem no seu banco de dados após o backup completo.

  2. Faça um backup completo do banco de dados de origem do SQL Server. Use o padrão de nomenclatura correto.

  3. Prepare um bucket do Cloud Storage e faça upload dos arquivos de backup nele. Configure a estrutura de diretório necessária para cada tipo de arquivo de backup que você quer usar.

  4. Crie um perfil de conexão de origem para o bucket do Cloud Storage.

Preparar a instância de destino do Cloud SQL para SQL Server

Para configurar a instância de destino do Cloud SQL, siga estas etapas:

  1. Crie e configure a instância de destino do Cloud SQL para SQL Server. Use recursos de computação e memória suficientes para atender às suas necessidades de migração e atribua o papel de administrador do Storage (roles/storage.admin) à conta de serviço da instância.

  2. Crie um perfil de conexão de destino para sua instância do Cloud SQL.

Criar e executar o job de migração

Para configurar e executar a migração, siga estas etapas:

  1. Crie e execute o job de migração.

    Quando você inicia o job de migração, os bancos de dados de destino do Cloud SQL para SQL Server são colocados no modo de recuperação, em que são totalmente gerenciados pelo Database Migration Service. Você pode promover a instância de destino quando os dados forem totalmente migrados. Depois que a instância de destino é promovida, todos os bancos de dados nela ficam totalmente operacionais. Você também ganha acesso de gravação total a esses bancos de dados.

    É possível monitorar o progresso da migração e a integridade da instância de destino com os recursos de observabilidade do Database Migration Service. Consulte Métricas de job de migração.

  2. Continue fazendo upload de novos arquivos de backup de registro de transações para o bucket do Cloud Storage.

    Para cobrir os dados que aparecem no banco de dados de origem após a exportação de backup completa, exporte arquivos de backup do registro de transações e faça upload deles para o bucket de armazenamento. O Database Migration Service detecta automaticamente novos arquivos, lê o conteúdo deles e envia os dados para a instância de destino. Consulte Automate transaction log exports.

Concluir a migração

Quando você decidir mudar seu aplicativo para a nova instância do Cloud SQL para SQL Server, siga estas etapas para concluir a migração:

  1. Interrompa todas as operações de gravação nos bancos de dados de origem. Você pode mudar para o modo somente leitura para manter a funcionalidade operacional.
  2. Faça o backup do último registro de transações, faça upload do arquivo para o bucket de armazenamento e interrompa a fase de carga incremental no Database Migration Service. Para conseguir esse resultado, realize uma das seguintes ações:
  3. Promova o job de migração.
  4. (Opcional) Verifique os dados da migração para verificar se estão completos.