Todos os produtos
Search
Central de documentação

ApsaraDB RDS:Use native replication instances

Última atualização: Sep 15, 2026

A replicação nativa do ApsaraDB RDS for MySQL permite replicar dados de um banco de dados MySQL autogerenciado diretamente para uma instância rds usando a replicação padrão do MySQL, sem ferramentas adicionais de migração ou services pagos de transferência de dados.

Casos de uso

  • Migração para a cloud com tempo de inatividade mínimo: importe um backup completo do banco de dados autogerenciado e mantenha a instância rds sincronizada via replicação até estar pronto para migrar a aplicação.

  • Sincronização híbrida de dados: mantenha o MySQL local e a instância rds na cloud continuamente sincronizados, por exemplo, durante uma migração em fases ou em um cenário de recuperação de desastres.

  • Replicação multicloud: replique dados de um banco de dados MySQL em outro provedor de cloud para uma instância ApsaraDB RDS for MySQL.

Pré-requisitos

Antes de começar, verifique se:

  • Versão do banco de dados: MySQL 5.7 (versão secundária 20240930 ou posterior) ou MySQL 8.0 (versão secundária 20250531 ou posterior).

  • Série do product: Basic Edition.

  • Método de faturamento: assinatura ou pagamento conforme o uso.

  • Região: China (Shanghai), China (Beijing), China (Shenzhen), China (Guangzhou) ou China (Chengdu).

A replicação nativa está disponível atualmente apenas nas regiões listadas acima. Se precisar desse recurso em outras regiões, envie um ticket .

Para usar uma instância de replicação nativa Serverless, crie primeiro uma instância com pagamento conforme o uso, ative a replicação nativa e depois altere o método de faturamento para Serverless.

Faturamento

  • Nova instância com replicação nativa ativada: aplicam-se as taxas da instância padrão. Não há cobrança extra pelo recurso de replicação nativa.

  • Atualização de uma instância existente: sem taxas adicionais.

  • Importação de dados via Object Storage Service (OSS): aplicam-se as taxas de armazenamento do OSS durante o período em que o arquivo de backup permanecer armazenado no OSS.

Limitações

Limitações funcionais

  • A instância opera no modo read-only enquanto a replicação nativa estiver ativa.

  • Não há suporte para atualizações de versão principal.

  • A replicação entre versões principais diferentes não é suportada. O banco de dados MySQL autogerenciado e a instância de replicação nativa do rds devem executar a mesma versão principal (por exemplo, ambos MySQL 8.0).

  • Não é possível atualizar a série do product (por exemplo, da Basic Edition para a High-availability Edition ou Cluster Edition).

  • A troca de VPC não é suportada.

  • Não há suporte para recuperação de bancos de dados e tabelas.

  • Ao atualizar uma instância existente para uma instância de replicação nativa, pode ocorrer uma desconexão transitória de cerca de 30 segundos. Execute essa operação fora dos horários de pico e certifique-se de que sua aplicação possua um mecanismo de reconexão.

Limitações de permissão

Escopo da conta privilegiada

Alguns privilégios SUPER para replicação nativa são concedidos à conta privilegiada da instância rds. Somente a conta privilegiada pode executar comandos de replicação nativa, como CHANGE MASTER TO (MySQL 5.7) ou CHANGE REPLICATION SOURCE TO (MySQL 8.0).

Lista de permissões de replicação

Quando a replicação nativa aplica eventos de log binário de uma fonte externa, ela verifica as permissões primeiro. Qualquer operação que exija permissões além da lista a seguir será rejeitada e interromperá a replicação:

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE,
DROP, RELOAD, PROCESS, REFERENCES, INDEX,
ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES,
LOCK TABLES, EXECUTE, REPLICATION SLAVE,
REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,
CREATE ROUTINE, ALTER ROUTINE, CREATE USER,
EVENT, TRIGGER ON *.* TO XXX;

Limitações de bancos de dados do sistema

Todas as operações em bancos de dados do sistema são ignoradas durante a replicação. Os bancos de dados do sistema incluem mysql, sys, information_schema, performance_schema e __recyclebin__.

Operações que modificam indiretamente os bancos de dados do sistema — como CREATE USER e GRANT — não são ignoradas. Essas operações devem obedecer à lista de permissões de replicação. Instruções que excedam as permissões concedidas, como GRANT SUPER ON *.* TO xxx; , interromperão a replicação.

Limitações de GTID

O ApsaraDB RDS for MySQL exige que o modo Global Transaction Identifier (GTID) esteja ativado e não oferece suporte para desativá-lo. Para replicar a partir de um banco de dados MySQL externo, a fonte também deve ter o GTID ativado.

Antes de configurar a replicação, execute o seguinte comando no banco de dados de origem para verificar o status do GTID:

SHOW VARIABLES LIKE 'gtid_mode';

Se o GTID não estiver ativado, execute:

SET GLOBAL gtid_mode = ON;

Comportamento durante manutenção

Durante operações de manutenção, como migração entre servidores ou atualização de versão secundária, as permissões para comandos de replicação nativa e modificação de parâmetros são revogadas temporariamente. O processo de replicação em si não é afetado. As permissões são restauradas automaticamente após a conclusão da manutenção.

Permissões de replicação nativa

Contas privilegiadas em instâncias de replicação nativa possuem permissões adicionais não disponíveis em instâncias rds padrão.

Comandos de replicação

Comando (MySQL 5.7)

Comando (MySQL 8.0)

Descrição

CHANGE MASTER TO

CHANGE REPLICATION SOURCE TO

Configura a fonte e a posição inicial para replicação. Consulte a documentação do MySQL 5.7.

START SLAVE

START REPLICA

Inicia o processo de replicação.

STOP SLAVE

STOP REPLICA

Interrompe o processo de replicação.

RESET SLAVE

RESET REPLICA

Redefine o estado da réplica para reiniciar a replicação a partir da fonte.

Modificação de parâmetros

Contas privilegiadas também podem modificar os seguintes parâmetros de tempo de execução:

  • `SET GLOBAL read_only = ON/OFF;` — alterna a instância entre o modo somente leitura (ON) e leitura/gravação (OFF).

  • SET SESSION sql_log_bin = ON/OFF; — controla se as instruções SQL da sessão atual são registradas no log binário.

  • SET SESSION GTID_NEXT = "<gtid_value>"; — define o valor do GTID para a próxima transação.

Etapa 1: Ativar a replicação nativa

Ativar replicação nativa em uma nova instância

Ao criar uma nova instância do ApsaraDB RDS for MySQL na página Standard Create, role até a parte inferior, expanda More e ative a chave Native Replication.

Essa opção aparece apenas quando a configuração da instância atende aos pré-requisitos.

image

Ativar replicação nativa em uma instância existente

Importante

A atualização de uma instância existente causa uma desconexão transitória de cerca de 30 segundos. Execute essa operação fora dos horários de pico e certifique-se de que sua aplicação possua um mecanismo de reconexão.

  1. Acesse a página rds Instances, selecione uma região e clique em no ID da instância de destino.

  2. No painel de navegação à esquerda, clique em Native Replication e, em seguida, clique em Enable.

  3. Revise as informações na caixa de diálogo e clique em OK.

Se a conta de service oficial do ApsaraDB RDS ainda não tiver permissão para acessar seu OSS e para criar e anexar interfaces de rede elásticas (ENIs), marque as caixas de seleção correspondentes na caixa de diálogo para conceder essas permissões.

Etapa 2: Configurar a conectividade de rede

Antes de importar dados, garanta que o banco de dados MySQL autogerenciado possa se comunicar com a instância rds pela rede.

Cenário

Configuração

Taxas

MySQL autogerenciado no ECS na mesma VPC

A conectividade de rede está disponível por padrão. Configure o grupo de segurança do ECS para permitir tráfego de entrada na porta 3306 proveniente do IP da instância rds. Para obter o IP da instância rds, conecte-se à instância e execute SHOW VARIABLES LIKE 'report_host';.

Nenhuma

Entre VPCs ou entre regiões na Alibaba Cloud

Use uma conexão de peering de VPC ou a Cloud Enterprise Network (CEN).

Aplicam-se as taxas de conexão de peering de VPC. Instâncias CEN são gratuitas, mas podem haver taxas de transferência de dados e largura de banda.

Data center local para a cloud

Utilize um VPN Gateway ou uma linha dedicada para conectar seu data center à VPC.

As taxas variam conforme o método. Consulte a documentação oficial para detalhes.

Outro provedor de cloud para o ApsaraDB RDS

Use uma VPN ou uma linha dedicada para estabelecer uma conexão de rede entre clouds.

As taxas variam conforme o método. Consulte a documentação oficial para detalhes.

Rede pública (não recomendado)

Instâncias de replicação nativa do ApsaraDB RDS suportam acesso à rede pública. Este método não é recomendado devido a riscos de segurança.

As taxas variam conforme o método.

Para referência completa, consulte Conexões e rede.

Etapa 3: Importar dados completos e configurar a replicação

Importe um backup completo do banco de dados autogerenciado para o rds e configure a replicação incremental para manter os dois bancos de dados sincronizados.

Instalar o Percona XtraBackup e fazer backup do banco de dados de origem

Instale o Percona XtraBackup no host do banco de dados autogerenciado.

Instalação no CentOS

Para MySQL 5.7:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

Para MySQL 8.0:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

Instalação no Ubuntu

Para MySQL 5.7:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm

Para MySQL 8.0:

wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm

O XtraBackup no Ubuntu não inclui o qpress. Instale-o separadamente:

sudo apt-get install -y qpress

Criar o backup

Os comandos a seguir destinam-se a bancos de dados que utilizam principalmente o mecanismo InnoDB. Se o banco de dados contiver tabelas MyISAM, use o comando innobackupex em vez disso.

Três métodos de compactação são suportados. Escolha um:

Método 1: Compactação qpress padrão

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>.xb

Método 2: Compactação QuickLZ

Requer a versão 8.0.34-29 ou anterior do XtraBackup. Consulte a documentação do Percona XtraBackup para mais detalhes.

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  --compress > ./<backup_file_name>_qp.xb

Método 3: Compactação Zstandard (zstd)

xtrabackup --backup \
  --host=127.0.0.1 \
  --port=3306 \
  --user=<user_of_self-managed_MySQL> \
  --password=<password> \
  --stream=xbstream \
  | zstd -q - > ./<backup_file_name>.xb.zstd

Importar o backup e configurar a replicação

Dois métodos de importação estão disponíveis. Se puder carregar o arquivo de backup no OSS, use o Método 1. Caso o ambiente tenha restrições e o streaming direto seja preferível, utilize o Método 2.

Método 1: Importar um arquivo de backup do OSS

Carregar o backup em um bucket do OSS

O bucket do OSS deve estar na mesma região da instância rds.

Instale o ossutil:

yum install -y unzip
sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash
ossutil config

Carregue o arquivo de backup:

ossutil -e <OSS_Endpoint> -i <your_AccessKeyId> -k <your_AccessKeySecret> cp <backup_file_name> oss://<bucket_name>/

Importar o backup para o rds

  1. Acesse a página rds Instances, selecione uma região e clique em no ID da instância.

  2. No painel de navegação à esquerda, clique em Native Replication.

  3. Clique em Import Full Data, configure os parâmetros e clique em OK.

Categoria Parâmetro Descrição
Método de upload do backup (obrigatório) MySQL version Exibido automaticamente como 5.7 ou 8.0. Nenhuma configuração necessária.
Import method Selecione Import from OSS.
OSS bucket Selecione o bucket do OSS que contém o arquivo de backup.
OSS file name Selecione o arquivo de backup. Se o arquivo estiver em um subdiretório, insira o caminho completo. Formatos suportados: .xb (xbstream), _qp.xb (QuickLZ), .xb.zst (zstd).
Configuração automática de replicação (opcional) Auto replication building Ative para configurar automaticamente a replicação a partir do banco de dados de origem após a importação. Se deixar esta opção desativada, configure a replicação manualmente após a importação.
Source IP address Endereço IP do banco de dados autogerenciado de origem.
Source port Porta do banco de dados autogerenciado de origem.
Source account Conta no banco de dados de origem. Deve ter as permissões REPLICATION CLIENT e REPLICATION SLAVE.
Account password Senha da conta de origem.

Método 2: Transmitir o backup diretamente para o rds

Instalar a ferramenta backup-helper e iniciar o fluxo de backup

# Install the backup-helper tool
wget -O backup-helper https://mysql-backup-helper.oss-cn-beijing.aliyuncs.com/v1.0.0-alpha/backup-helper && chmod +x backup-helper

# Start the backup stream (requires MySQL and the matching XtraBackup version to be installed)
./backup-helper --backup --mode=stream --host=<MySQL_IP> --port=<MySQL_port> --user=<MySQL_account> --password=<MySQL_password>

Importar o fluxo para o rds

  1. Faça login no console do ApsaraDB RDS, selecione uma região e clique em no ID da instância.

  2. No painel de navegação à esquerda, clique em Native Replication.

  3. Clique em Import Full Data, configure os parâmetros e clique em OK.

Categoria Parâmetro Descrição
Método de upload do backup (obrigatório) MySQL version Exibido automaticamente como 5.7 ou 8.0. Nenhuma configuração necessária.
Import method Selecione Direct Stream Backup.
Source backup IP address Endereço IP usado para o fluxo de backup.
Source backup port Porta usada para o fluxo de backup. Padrão: 9999.
Configuração automática de replicação (opcional) Auto replication building Ative para configurar automaticamente a replicação a partir do banco de dados de origem após a importação. Se deixar esta opção desativada, configure a replicação manualmente após a importação.
Source IP address Endereço IP do banco de dados autogerenciado de origem.
Source port Porta do banco de dados autogerenciado de origem.
Source account Conta no banco de dados de origem. Deve ter as permissões REPLICATION CLIENT e REPLICATION SLAVE.
Account password Senha da conta de origem.

Configurar a replicação manualmente (se necessário)

Se você não ativou a opção Auto replication building durante a importação, ou se a configuração automática falhou e não pôde ser recuperada, configure o link de replicação manualmente.

  1. Crie uma conta privilegiada na instância rds.

  2. No banco de dados autogerenciado de origem, crie uma conta de replicação e conceda as permissões necessárias:

    -- Create a replication account. For production, restrict the allowed IP address instead of using '%'.
    -- Replace 'Test123!' with a strong password.
    CREATE USER 'replica'@'%' IDENTIFIED BY 'Test123!';
    
    -- Grant replication permissions
    GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'replica'@'%';
    
    -- Apply the changes
    FLUSH PRIVILEGES;
  3. Faça login na instância rds usando a conta privilegiada e execute os seguintes comandos: MySQL 5.7

    -- Configure the replication source
    CHANGE MASTER TO
      MASTER_HOST='<source_IP>',
      MASTER_PORT='<source_port>',
      MASTER_USER='<replication_account>',
      MASTER_PASSWORD='<replication_account_password>',
      MASTER_AUTO_POSITION=1;
    
    -- Start replication
    START SLAVE;
    
    -- Check replication status
    SHOW SLAVE STATUS;

    MySQL 8.0

    -- Configure the replication source
    CHANGE REPLICATION SOURCE TO
      SOURCE_HOST='<source_IP>',
      SOURCE_PORT='<source_port>',
      SOURCE_USER='<replication_account>',
      SOURCE_PASSWORD='<replication_account_password>',
      SOURCE_AUTO_POSITION=1;
    
    -- Start replication
    START REPLICA;
    
    -- Check replication status
    SHOW REPLICA STATUS;

Verificar o status da replicação

Na página Native Replication da instância rds, verifique o status da replicação. Quando for exibido como Running, o link de replicação estará ativo e os dados estarão sendo sincronizados.

Desativar a replicação nativa

Quando estiver pronto para migrar a aplicação — ou caso não precise mais da replicação — desative a replicação nativa para retornar a instância ao modo de leitura/gravação.

  1. Acesse a página rds Instances, selecione uma região e clique em no ID da instância.

  2. No painel de navegação à esquerda, clique em Native Replication e, em seguida, clique em Disable.

  3. Clique em OK.

Importante

Após clicar em OK, o link de replicação do banco de dados de origem é encerrado. A instância rds volta a ser uma instância padrão do ApsaraDB RDS for MySQL e muda do modo somente leitura para leitura/gravação, permitindo operações de escrita.

Referência de API

Operação

API

Observações

Criar uma instância com replicação nativa

CreateDBInstance

Defina ExternalReplication como ON. A configuração básica da instância deve atender aos pré-requisitos.

Configurar um link de replicação nativa para uma instância existente

ImportUserBackupFile

Próximos passos