Esta página descreve como migrar seus bancos de dados do SQL Server para uma instância do Cloud SQL para SQL Server com o Database Migration Service.
O processo de migração envolve as seguintes tarefas:
Exportar o backup completo do banco de dados e os arquivos de registro de transações da instância de origem do SQL Server.
Também é possível usar o backup diferencial opcional do banco de dados no processo de migração.
Enviar os arquivos de backup para um bucket do Cloud Storage.
Criar a instância de destino do Cloud SQL para SQL Server.
Criar e executar o job de migração no Database Migration Service.
Monitorar o progresso do job de migração com os recursos de observabilidade do Database Migration Service.
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 adicional. No entanto, os preços do Cloud SQL e do Cloud Storage são válidos para cobranças de rede, bem como para entidades do Cloud SQL e do Cloud Storage criadas para fins de migração.
Neste documento, você usará os seguintes componentes faturáveis do Google Cloud
- Cloud Storage
- Cloud SQL
Para gerar uma estimativa de custo com base na projeção de uso, use a calculadora de preços.
Antes de começar
- Verifique se esse caminho de migração oferece suporte total ao seu cenário. Consulte Limitações conhecidas do SQL Server.
- Considere em qual região você quer criar o banco de dados de destino. O Database Migration Service é um produto totalmente regional, o que significa que 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.
- No Google Cloud console do, na página do seletor de projetos, selecione ou crie um Google Cloud projeto do.
- Ative as APIs Database Migration Service, Compute Engine, Cloud Storage, e Cloud SQL Admin.
Funções exigidas
Para receber as permissões necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service, peça ao administrador para conceder os papéis do IAM necessários no projeto para as seguintes contas envolvidas no processo de migração
- Conta de usuário que realiza a migração:
-
Administrador de migração de banco de dados (
roles/datamigration.admin) -
Administrador de armazenamento (
roles/storage.admin) -
Editor do Cloud SQL (
roles/cloudsql.editor)
-
Administrador de migração de banco de dados (
- Conta de serviço do Database Migration Service:
-
Administrador de migração de banco de dados (
roles/datamigration.admin) -
Administrador de armazenamento (
roles/storage.admin) -
Editor do Cloud SQL (
roles/cloudsql.editor) -
Usuário do Cloud SQL Studio (
roles/cloudsql.studioUser)
-
Administrador de migração de banco de dados (
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
Esses papéis predefinidos contêm as permissões necessárias para realizar migrações homogêneas do SQL Server com o Database Migration Service. Para conferir as permissões exatas necessárias, expanda 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.getresourcemanager.projects.listcloudsql.operations.getcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.importcloudsql.databases.getcloudsql.databases.listcloudsql.databases.deletecompute.machineTypes.listcompute.machineTypes.getcompute.projects.getstorage.buckets.createstorage.buckets.list
- Conta de serviço do Database Migration Service:
datamigration.*resourcemanager.projects.getresourcemanager.projects.listcloudsql.instances.createcloudsql.instances.getcloudsql.instances.listcloudsql.instances.executeSqlstorage.objects.createstorage.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 migração, siga estas etapas:
Considere sua estratégia de backup para o processo de migração. 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 banco de dados depois que você faz o backup completo.
Faça um backup completo do banco de dados de origem do SQL Server. Use o padrão de nomenclatura correto.
Prepare um bucket do Cloud Storage e faça upload dos arquivos de backup para ele. Configure a estrutura de diretório necessária para cada tipo de arquivo de backup que você quer usar.
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:
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 necessidades de migração e atribua o papel Administrador de armazenamento (
roles/storage.admin) à conta de serviço da instância.Crie um perfil de conexão de destino para a instância do Cloud SQL.
Criar e executar o job de migração
Para configurar e executar a migração, siga estas etapas:
Crie e execute o job de migração.
Ao iniciar 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. É possível 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 total de gravação a esses bancos de dados.
É possível monitorar o progresso da migração, bem como a integridade da instância de destino, com os recursos de observabilidade do Database Migration Service. Consulte Métricas de job de migração.
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 depois de fazer a exportação de backup completo, exporte os arquivos de backup de 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 Automatizar exportações de registro de transações.
Finalizar a migração
Quando você decidir mudar seu aplicativo para a nova instância do Cloud SQL para SQL Server, finalize a migração seguindo estas etapas:
- Interrompa todas as operações de gravação nos bancos de dados de origem. É possível alternar para o modo somente leitura para manter a funcionalidade operacional.
- Faça o último backup do 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 isso, realize uma das seguintes ações:
- Interrompa os uploads automatizados de arquivos de backup ou faça upload do último arquivo de registro de transações. Monitore o tamanho dos backups de registro de transações não processados para determinar quando o Database Migration Service terminar de processar esse arquivo.
- Opcionalmente, é possível fazer upload de um arquivo de registro de transações cujo nome termine
em
.trn.finalsufixo. O Database Migration Service interrompe as cargas contínuas quando detecta um arquivo de backup cujo nome corresponde à.trn.finalconvenção de sufixo.Quando o Database Migration Service terminar de processar esse arquivo, o status do job de migração será alterado para Pronto para promover.
- Promova o job de migração.
- (Opcional) Verifique se os dados de migração estão completos.