Gerenciar jobs de migração

No console do Google Cloud , é possível realizar ações em massa para trabalhos de migração que tenham o mesmo status. É possível realizar ações em um único job de migração no console do Google Cloud e usando a Google Cloud CLI.

É possível realizar as seguintes ações no job de migração:

Ação Descrição
Iniciar Iniciar jobs de migração que não estão no estado Em execução ou Iniciando. Consulte Status dos jobs de migração.
Parar Interromper um job de migração em execução. O movimento de dados é pausado. O status do job de migração muda primeiro para Stopping e depois para Stopped. É possível retomar, excluir ou promover um job de migração interrompido.
Retomar Se você interromper um job de migração durante a carga incremental, ele poderá ser retomado mais tarde. Quando você retoma um job de migração, Database Migration Service seleciona todos os arquivos de registro de transações que se acumulam quando o job de migração é interrompido.
Reiniciar É possível reiniciar um job de migração que encontrou um erro e não pode prosseguir com a replicação de dados. O resultado da reinicialização de um job de migração depende do motivo da falha:
  • Jobs de migração com falha que não podem ser recuperados do erro, tentem novamente todo o processo de migração, incluindo o carregamento inicial do arquivo de backup completo.
  • Se a replicação falhou devido a um erro em um ou mais bancos de dados de origem ou de destino, a reinicialização da migração exclui todos os dados dos bancos de dados de destino.
  • Se você criar uma nova pasta para outro banco de dados depois de iniciar a migração e adicionar à lista de bancos de dados selecionados para migração, a reinicialização da migração também vai replicar os novos bancos de dados na instância de destino.
Excluir Um job de migração pode ser excluído. O resultado depende do status do job:
  • Se o job de migração estiver no status Completed, o registro será excluído da lista de jobs de migração.
  • Se o job de migração estiver em qualquer outro status, será possível excluir o par de instância/primário do Cloud SQL de destino.
Promover Durante o processo de migração, o banco de dados de destino é colocado em um estado somente leitura, totalmente gerenciado pelo Database Migration Service. Quando você quer mudar seu aplicativo para o banco de dados de destino migrado, a promoção do job de migração atualiza o banco de dados de destino para uma réplica independente.
Durante o processo 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. Não é possível realizar operações de leitura ou gravação nos bancos de dados de destino até que você promova o job de migração. Consulte Promover uma migração.

Iniciar um job de migração

Quando o job de migração for totalmente criado (ou seja, não for salvo em um rascunho), você poderá iniciá-lo a qualquer momento para começar a migrar dados.

Para iniciar um job de migração, siga estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Jobs, clique no nome de exibição do job de migração que você quer iniciar.

    A página de detalhes do job de migração é aberta.

  3. Clique em Iniciar.
  4. Na caixa de diálogo, clique em Iniciar.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
start MIGRATION_JOB_ID \
  --region=REGION

Windows (PowerShell)

gcloud database-migration migration-jobs `
start MIGRATION_JOB_ID `
  --region=REGION

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
start MIGRATION_JOB_ID ^
  --region=REGION

Resultado

A ação é realizada de forma assíncrona. Assim, esse comando retorna uma entidade de operação que representa uma operação de longa duração:

done: false
metadata:
  '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
  apiVersion: v1
  createTime: '2024-02-20T12:20:24.493106418Z'
  requestedCancellation: false
  target: MIGRATION_JOB_ID
  verb: start
name: OPERATION_ID
Para saber se a operação foi concluída, consulte o objeto de operação retornado ou verifique o status do job de migração:

Interromper um job de migração

É possível interromper um job de migração em execução a qualquer momento seguindo estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Jobs, clique no nome de exibição do job de migração que você quer iniciar.

    A página de detalhes do job de migração é aberta.

  3. Clique em Interromper.
  4. Na caixa de diálogo, clique em Parar.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
stop MIGRATION_JOB_ID \
  --region=REGION

Windows (PowerShell)

gcloud database-migration migration-jobs `
stop MIGRATION_JOB_ID `
  --region=REGION

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
stop MIGRATION_JOB_ID ^
  --region=REGION

Resultado

A ação é realizada de forma assíncrona. Assim, esse comando retorna uma entidade de operação que representa uma operação de longa duração:

done: false
metadata:
  '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
  apiVersion: v1
  createTime: '2024-02-20T12:20:24.493106418Z'
  requestedCancellation: false
  target: MIGRATION_JOB_ID
  verb: stop
name: OPERATION_ID
Para saber se a operação foi concluída, consulte o objeto de operação retornado ou verifique o status do job de migração:

Retomar um job de migração

Para retomar um job de migração interrompido, siga estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Jobs, clique no nome de exibição do job de migração que você quer iniciar.

    A página de detalhes do job de migração é aberta.

  3. Clique em Retomar.
  4. Na caixa de diálogo, clique em Retomar.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
resume MIGRATION_JOB_ID \
  --region=REGION

Windows (PowerShell)

gcloud database-migration migration-jobs `
resume MIGRATION_JOB_ID `
  --region=REGION

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
resume MIGRATION_JOB_ID ^
  --region=REGION

Resultado

A ação é realizada de forma assíncrona. Assim, esse comando retorna uma entidade de operação que representa uma operação de longa duração:

done: false
metadata:
  '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
  apiVersion: v1
  createTime: '2024-02-20T12:20:24.493106418Z'
  requestedCancellation: false
  target: MIGRATION_JOB_ID
  verb: resume
name: OPERATION_ID
Para saber se a operação foi concluída, consulte o objeto de operação retornado ou verifique o status do job de migração:

Reiniciar um job de migração

Para iniciar um job de migração, siga estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Jobs, clique no nome de exibição do job de migração que você quer reiniciar.

    A página de detalhes do job de migração é aberta.

  3. Clique em Restart.
  4. Na caixa de diálogo, clique em Reiniciar.

gcloud

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
restart MIGRATION_JOB_ID \
  --region=REGION

Windows (PowerShell)

gcloud database-migration migration-jobs `
restart MIGRATION_JOB_ID `
  --region=REGION

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
restart MIGRATION_JOB_ID ^
  --region=REGION

Resultado

A ação é realizada de forma assíncrona. Assim, esse comando retorna uma entidade de operação que representa uma operação de longa duração:

done: false
metadata:
  '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
  apiVersion: v1
  createTime: '2024-02-20T12:20:24.493106418Z'
  requestedCancellation: false
  target: MIGRATION_JOB_ID
  verb: restart
name: OPERATION_ID
Para saber se a operação foi concluída, consulte o objeto de operação retornado ou verifique o status do job de migração:

Atualizar um job de migração de rascunho

Para concluir a criação de um job de migração, siga estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Rascunhos, clique no nome de exibição do job de migração que você quer terminar de criar.

    O assistente de criação de jobs de migração é aberto.

  3. Concluir a criação do job de migração. Consulte Criar um job de migração.

gcloud

Este exemplo usa a flag --no-async opcional para que todas as operações sejam realizadas de forma síncrona. Isso significa que alguns comandos podem levar um tempo para serem concluídos. Você pode pular a flag --no-async para executar comandos de forma assíncrona. Se você fizer isso, use o comando gcloud database-migration operations describe para verificar se a operação foi bem-sucedida.

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID com um identificador legível por máquina para o job de migração.
  • REGION pelo identificador da região em que você quer salvar o perfil de conexão.
  • MIGRATION_JOB_NAME com um nome legível para humanos para o job de migração. Esse valor aparece no Database Migration Service no console do Google Cloud .
  • SOURCE_CONNECTION_PROFILE_ID com um identificador legível por máquina do perfil de conexão de origem.
  • DESTINATION_CONNECTION_PROFILE_ID com um identificador legível por máquina do perfil de conexão de destino.
  • Configuração de backup diferencial: é possível configurar se o job de migração pode usar arquivos de backup diferencial do bucket do Cloud Storage. Adicione uma das seguintes flags ao comando:
    • --sqlserver-diff-backup para ativar arquivos de backup diferencial para a migração
    • --no-sqlserver-diff-backup para desativar os arquivos de backup diferencial para a migração

    Para mais informações sobre os arquivos de backup compatíveis, consulte Tipos de arquivos de backup compatíveis.

  • COMMA_SEPARATED_DATABASE_ID_LIST com uma lista separada por vírgulas de identificadores de banco de dados do SQL Server que você quer migrar dos arquivos de backup.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
create MIGRATION_JOB_ID \
  --no-async \
  --region=REGION \
  --display-name=MIGRATION_JOB_NAME \
  --source=SOURCE_CONNECTION_PROFILE_ID \
  --destination=DESTINATION_CONNECTION_PROFILE_ID \
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST \
  --type=CONTINUOUS]

Windows (PowerShell)

gcloud database-migration migration-jobs `
create MIGRATION_JOB_ID `
  --no-async `
  --region=REGION `
  --display-name=MIGRATION_JOB_NAME `
  --source=SOURCE_CONNECTION_PROFILE_ID `
  --destination=DESTINATION_CONNECTION_PROFILE_ID `
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST `
  --type=CONTINUOUS]

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
create MIGRATION_JOB_ID ^
  --no-async ^
  --region=REGION ^
  --display-name=MIGRATION_JOB_NAME ^
  --source=SOURCE_CONNECTION_PROFILE_ID ^
  --destination=DESTINATION_CONNECTION_PROFILE_ID ^
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST ^
  --type=CONTINUOUS]

Você receberá uma resposta semelhante a esta:

Waiting for migration job [MIGRATION_JOB_ID]
to be updated with [OPERATION_ID]

Waiting for operation [OPERATION_ID] to complete...done.

Updated migration job MIGRATION_JOB_ID [OPERATION_ID]

Adicionar bancos de dados ao job de migração

Para adicionar um novo banco de dados ao job de migração, primeiro é necessário criar uma nova pasta dedicada no bucket do Cloud Storage e fazer o upload dos arquivos de backup. Consulte Configurar buckets do Cloud Storage.

Quando você tiver os arquivos de backup necessários no bucket do Cloud Storage, siga estas etapas:

Console

  1. No console do Google Cloud , acesse a página Jobs de migração.

    Acessar "Jobs de migração"

  2. Na guia Jobs, clique no nome de exibição do job de migração.

    A página de detalhes do job de migração é aberta.

  3. Clique em Editar.
  4. Na seção Selecionar bancos de dados para migrar, use as caixas de seleção para selecionar o novo banco de dados que você quer adicionar ao job de migração.
  5. (Opcional) Se você usa backups criptografados, forneça as chaves de criptografia para seus backups. Para mais detalhes sobre o uso de backups criptografados, consulte Usar backups criptografados.

    Execute estas ações:

    • Clique em Editar detalhes ao lado do banco de dados selecionado para migração.

      O painel lateral Criptografia é aberto.

    • Use os menus suspensos Chave de criptografia para selecionar suas chaves.
    • No campo Password, digite a senha da chave de criptografia.
    • Clique em Salvar e sair.

gcloud

Este exemplo usa a flag --no-async opcional para que todas as operações sejam realizadas de forma síncrona. Isso significa que alguns comandos podem levar um tempo para serem concluídos. Você pode pular a flag --no-async para executar comandos de forma assíncrona. Se você fizer isso, use o comando gcloud database-migration operations describe para verificar se a operação foi bem-sucedida.

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.
  • COMMA_SEPARATED_DATABASE_ID_LIST com uma lista separada por vírgulas de identificadores de banco de dados do SQL Server que você quer migrar dos arquivos de backup. Esses identificadores precisam ser iguais aos nomes das pastas do banco de dados no Cloud Storage.

    Por exemplo: --sqlserver-databases=my-business-database,my-other-database

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
update MIGRATION_JOB_ID \
  --region=REGION \
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST

Windows (PowerShell)

gcloud database-migration migration-jobs `
update MIGRATION_JOB_ID `
  --region=REGION `
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
update MIGRATION_JOB_ID ^
  --region=REGION ^
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST

Você receberá uma resposta semelhante a esta:

Waiting for migration job [MIGRATION_JOB_ID]
to be updated with [OPERATION_ID]

Waiting for operation [OPERATION_ID] to complete...done.

Updated migration job MIGRATION_JOB_ID [OPERATION_ID]

Editar um job de migração

Para jobs de migração que não são rascunhos, use a Google Cloud CLI para mudar o nome de exibição.

Este exemplo usa a flag --no-async opcional para que todas as operações sejam realizadas de forma síncrona. Isso significa que alguns comandos podem levar um tempo para serem concluídos. Você pode pular a flag --no-async para executar comandos de forma assíncrona. Se você fizer isso, use o comando gcloud database-migration operations describe para verificar se a operação foi bem-sucedida.

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.
  • MIGRATION_JOB_NAME com um nome legível para humanos para o job de migração. Esse valor aparece no Database Migration Service no console do Google Cloud .

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
update MIGRATION_JOB_ID \
  --region=REGION \
  --display-name=MIGRATION_JOB_NAME 

Windows (PowerShell)

gcloud database-migration migration-jobs `
update MIGRATION_JOB_ID `
  --region=REGION `
  --display-name=MIGRATION_JOB_NAME 

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
update MIGRATION_JOB_ID ^
  --region=REGION ^
  --display-name=MIGRATION_JOB_NAME 

Você receberá uma resposta semelhante a esta:

Waiting for migration job [MIGRATION_JOB_ID]
to be updated with [OPERATION_ID]

Waiting for operation [OPERATION_ID] to complete...done.

Updated migration job MIGRATION_JOB_ID [OPERATION_ID]

Testar um job de migração

Antes de executar o job de migração, é possível realizar uma operação de teste para verificar se o Database Migration Service pode alcançar todas as entidades de origem e destino necessárias. No console do Google Cloud , só é possível testar trabalhos de migração pendentes criados no assistente de criação de trabalhos de migração. Consulte Criar um trabalho de migração.

Com a CLI gcloud, é possível testar jobs de migração que foram criados, mas ainda não iniciados.

Antes de usar os dados do comando abaixo, faça estas substituições:

  • MIGRATION_JOB_ID pelo identificador do job de migração.

    Se você não souber o identificador, use o comando gcloud database-migration migration-jobs list para listar todos os jobs de migração em uma determinada região e conferir os identificadores.

  • REGION com o identificador da região em que o perfil de conexão é salvo.

Execute o seguinte comando:

Linux, macOS ou Cloud Shell

gcloud database-migration migration-jobs \
verify MIGRATION_JOB_ID \
  --region=REGION

Windows (PowerShell)

gcloud database-migration migration-jobs `
verify MIGRATION_JOB_ID `
  --region=REGION

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
verify MIGRATION_JOB_ID ^
  --region=REGION

Resultado

A ação é realizada de forma assíncrona. Assim, esse comando retorna uma entidade de operação que representa uma operação de longa duração:

done: false
metadata:
  '@type': type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata
  apiVersion: v1
  createTime: '2024-02-20T12:20:24.493106418Z'
  requestedCancellation: false
  target: MIGRATION_JOB_ID
  verb: verify
name: OPERATION_ID
Para saber se a operação foi concluída, consulte o objeto de operação retornado ou verifique o status do job de migração: