Use a replicação de bancos de dados entre instâncias para copiar um ou mais bancos de dados, contas e permissões de conta de uma instância RDS de origem para uma instância RDS de destino.
Inicie a replicação pelo console ou chamando a operação da API CopyDatabaseBetweenInstances.
Como funciona
A replicação ocorre em duas etapas:
O ApsaraDB RDS faz um backup completo da instância de origem.
Os dados do backup completo são restaurados na instância de destino.
Dados gravados na instância de origem durante a replicação não são transferidos para o destino. Se a tarefa de replicação falhar em qualquer momento, nenhum dado será gravado na instância de destino, o que preserva a consistência dos dados.
Limitações
As instâncias de origem e de destino devem pertencer à mesma conta Alibaba Cloud.
A região e o tipo de rede das duas instâncias devem ser iguais. As zonas podem ser diferentes.
A instância de destino não deve ter bancos de dados com nomes idênticos aos que você deseja replicar.
Somente a replicação completa única é suportada. Não há suporte para sincronização incremental após a replicação inicial.
Instâncias SQL Server Web não suportam compressão de backup, o que pode reduzir o throughput de backup e restauração para menos de 100 GB por hora.
Replicação de banco de dados versus migração de dados do DTS
|
Replicação de banco de dados |
Migração de dados do Data Transmission Service (DTS) |
|
|
Princípio |
Replica bancos de dados usando arquivos de backup de dados ou até um ponto no tempo. Não exclui os dados de origem. |
Executa migração lógica lendo e analisando logs da instância de origem. Uma migração completa consiste em migração de esquema, migração completa de dados e migração incremental de dados. Não exclui os dados de origem. |
|
Escopo |
Apenas instâncias do ApsaraDB RDS for SQL Server |
Bancos de dados autogerenciados no Elastic Compute Service (ECS), data centers on-premises, servidores de nuvem de terceiros e instâncias do ApsaraDB RDS for SQL Server. Consulte Bancos de dados suportados. |
|
Tipos de migração |
Apenas replicação completa; gratuita |
Migração de esquema, migração completa de dados e migração incremental de dados. Para cobranças sobre migração incremental de dados, consulte Visão geral do faturamento. |
|
Dados de origem |
Não excluídos |
Não excluídos |
Use a replicação de banco de dados para cópias simples e únicas entre instâncias RDS. Use o DTS quando precisar de sincronização incremental ou desejar migrar de uma fonte que não seja RDS.
Pré-requisitos
Antes de começar, verifique se você tem:
Uma instância de destino cuja versão do mecanismo de banco de dados seja igual ou superior à versão da instância de origem
Uma instância de destino cuja edição do RDS seja igual ou superior à edição da instância de origem. Edições em ordem decrescente: RDS Cluster Edition, RDS High-availability Edition, RDS Basic Edition
Uma instância de destino com armazenamento disponível maior que o tamanho total dos bancos de dados a replicar. Para expandir o armazenamento, consulte Alterar as especificações de uma instância do ApsaraDB RDS for SQL Server
As famílias das duas instâncias podem ser iguais ou diferentes (uso geral ou dedicada).
Replicar bancos de dados
Acesse a página Instances. Na barra de navegação superior, selecione a região da instância de origem e clique em no ID da instância.
No painel de navegação à esquerda, clique em Databases.
Clique em Replicate to Another Instance.
-
Na caixa de diálogo, configure os seguintes parâmetros:
Parâmetro
Descrição
Source Instance Name
Nome da instância RDS de origem. Exibido automaticamente.
Destination Instance Name
Nome da instância RDS de destino. A região e o tipo de rede devem corresponder aos da instância de origem; as zonas podem ser diferentes.
Source Databases
Bancos de dados a replicar. Clique em
ou
para mover bancos de dados entre as listas de seleção. Bancos de dados com o mesmo nome de um banco existente no destino serão ignorados. Selecionar um banco de dados replica tanto seu esquema quanto os dados das tabelas.Copy Users and Permissions
Controla se contas e permissões são replicadas para a instância de destino. Users and permissions are also replicated.: Contas e suas permissões são copiadas. Se o destino já tiver uma conta com o mesmo nome de usuário, as permissões dessa conta serão sobrescritas para corresponder às da origem. Se a conta não existir no destino, ela será criada e receberá as mesmas permissões. Only databases are replicated. Users and permissions are not replicated. (padrão): Apenas o conteúdo do banco de dados é copiado. Após a replicação, crie contas no destino e conceda permissões manualmente. Consulte Criar contas e bancos de dados.
Clique em OK.
A tarefa de replicação é executada em segundo plano. Nenhuma alteração será gravada no destino se a tarefa falhar.
Perguntas frequentes
Quanto tempo leva a replicação?
O tempo de replicação depende principalmente do tamanho dos bancos de dados replicados. A tabela a seguir apresenta estimativas de throughput baseadas no tamanho dos dados descompactados.
|
Operação |
Obrigatória |
Estimativa de throughput |
|
Fazer backup completo dos dados na origem |
Não (ignorada se existir um backup recente) |
~200 GB por hora |
|
Restaurar o backup completo no destino |
Sim |
~200 GB por hora |
|
Restaurar o banco de dados |
Sim |
Em até 2 minutos |
Regra de 36 horas: Se nenhum backup completo foi feito na instância de origem nas últimas 36 horas, um novo backup completo é acionado antes da restauração. Para minimizar o tempo total de replicação, faça manualmente um backup completo antes de iniciar a replicação ou inicie a replicação dentro de 36 horas após o último backup completo automático. Consulte Fazer backup de uma instância do ApsaraDB RDS for SQL Server.
Exemplo: Uma instância com 4 núcleos de CPU, 8 GB de memória e 600 GB de dados.
Backup completo dos dados: ~3 horas (600 GB / 200 GB/h)
Restauração do backup completo no destino: ~3 horas (600 GB / 200 GB/h)
Restauração do banco de dados: em até 2 minutos
Tempo total: ~6 horas e 2 minutos se não houver backup recente; ~3 horas e 2 minutos se um backup completo foi feito dentro de 36 horas.
Observações sobre throughput:
A velocidade de backup e restauração varia conforme a região e o horário. Para uma estimativa mais precisa, verifique o volume de dados e a duração do backup completo mais recente.
Em instâncias com especificações pequenas (por exemplo, 2 núcleos de CPU e 4 GB de memória), a aplicação de logs de transações incrementais consome muitos recursos e pode desacelerar significativamente a fase de restauração do banco de dados.
Para instâncias com SQL Server 2019 ou posterior, a opção Accelerated Database Recovery pode encurtar a fase de restauração do banco de dados. Avalie essa opção consultando a documentação oficial da Microsoft antes de ativá-la.
Quais são as melhores práticas para agendar a replicação?
Agende fora do horário de pico para reduzir o impacto nas cargas de trabalho de produção.
Evite transações de longa duração na instância de origem durante a replicação — por exemplo, criação ou reconstrução de índices, ou arquivamento de grandes conjuntos de dados. Essas operações geram logs de transações adicionais que prolongam a fase de restauração do banco de dados.
Próximos passos
Replicar bancos de dados usando a API: CopyDatabaseBetweenInstances
Restaurar uma instância a partir de um backup em vez de replicar: Restaurar os dados de uma instância do ApsaraDB RDS for SQL Server