Como posso migrar de um RDS para PostgreSQL para o Aurora PostgreSQL?
Desejo migrar de um Amazon Relational Database Service (Amazon RDS) para PostgreSQL para uma edição do Amazon Aurora compatível com PostgreSQL.
Breve descrição
Existem cinco opções para realizar a migração de dados do seu banco de dados existente do Amazon RDS para PostgreSQL para um cluster de banco de dados do Amazon Aurora compatível com PostgreSQL.
Para realizar a migração do Amazon RDS para PostgreSQL para o Aurora PostgreSQL, use um dos métodos a seguir, dependendo do seu caso de uso:
- Utilização de um snapshot
- Utilização de uma réplica de leitura do Aurora
- Utilização de um utilitário pg_dump
- Utilização de replicação lógica
- Utilização de uma importação de dados do Amazon S3
Resolução
Utilização de um snapshot para a migrar um RDS para PostgreSQL
Para a criação de um cluster de banco de dados do Aurora PostgreSQL, você pode migrar um snapshot de banco de dados de uma instância de banco de dados do RDS para PostgreSQL. O novo cluster de banco de dados do Aurora PostgreSQL é preenchido com os dados da instância do banco de dados do RDS para PostgreSQL original. O snapshot do RDS para PostgreSQL deve usar a mesma versão ou uma versão secundária inferior do Aurora PostgreSQL.
Você pode realizar a migração do snapshot usando o console do Amazon RDS ou a AWS Command Line Interface (AWS CLI). Para obter instruções, consulte Migrar um snapshot de uma instância de banco de dados do RDS para PostgreSQL para um cluster de bancos de dados do Aurora PostgreSQL.
Importante:
- Se o snapshot de banco de dados estiver em uma região da AWS diferente daquela em que você deseja que os dados estejam localizados, copie o snapshot de banco de dados para outra região.
- Se a migração for para outra conta da AWS, consulte How can I share an encrypted Amazon RDS DB snapshot with another account? (Como posso compartilhar um snapshot de banco de dados criptografado do Amazon RDS com outra conta?)
Utilização de uma réplica de leitura do Aurora para migrar um RDS para PostgreSQL
Use uma instância de banco de dados do RDS para PostgreSQL como base para um novo cluster de banco de dados do Aurora PostgreSQL ao utilizar uma réplica de leitura do Aurora. A réplica de leitura do Aurora está disponível somente para migrações em uma mesma conta e região da AWS. A opção de réplica de leitura do Aurora minimiza o tempo de inatividade durante uma migração. Você poderá promover o novo cluster quando o atraso de replicação entre a instância primária do RDS e a réplica de leitura do Aurora for zero (0).
A criação de uma réplica de leitura do Aurora usando o console do Amazon RDS estará disponível somente se a região da AWS fornecer uma versão compatível do Aurora PostgreSQL. Você pode criar uma réplica de leitura do Aurora para uma instância de banco de dados do RDS para PostgreSQL usando o console do Amazon RDS ou a AWS CLI. Para obter instruções, consulte Migrar dados de uma instância de banco de dados do RDS para PostgreSQL para um cluster de bancos de dados do Aurora PostgreSQL usando uma réplica de leitura do Aurora.
Observação: o RDS para PostgreSQL de origem deve ter capacidade de armazenamento suficiente para reter os segmentos de registro prévio da escrita (WAL) durante a migração. Para obter mais informações, consulte Preparação para migrar dados usando uma réplica de leitura do Aurora.
Utilização de um utilitário pg_dump para a migrar um RDS para PostgreSQL
O pg_dump é um utilitário para realização de backup de um banco de dados PostgreSQL. Se o seu banco de dados for pequeno ou você não tiver considerações sobre o tempo de inatividade, poderá usar essa opção. Esse método é mais adequado para a migração de bancos de dados de poucos gigabytes até, no máximo, 500 GB. A migração de bancos de dados maiores pode requerer uma interrupção prolongada, dependendo do tamanho do banco de dados. Use uma instância do Amazon Elastic Compute Cloud (Amazon EC2) como host na mesma zona de disponibilidade do banco de dados de destino para reduzir a latência da rede.
Para obter instruções, consulte Importar um banco de dados PostgreSQL de uma instância do Amazon EC2.
Para obter informações adicionais sobre pg_dump, consulte a documentação do PostgreSQL oficial.
Utilização da replicação lógica para migrar um RDS para PostgreSQL
Não há suporte para o Amazon RDS para PostgreSQL e o Aurora PostgreSQL como destinos para a replicação física externa do PostgreSQL. No entanto, a replicação lógica é uma maneira de reduzir o tempo geral da migração. Você pode definir um modelo de publicador e assinante entre as instâncias do RDS para PostgreSQL e do Aurora PostgreSQL para migrar dados com tempo de inatividade mínimo.
Para obter mais informações, consulte Best practices for migrating PostgreSQL databases to Amazon RDS and Amazon Aurora (Práticas recomendadas para migrar bancos de dados PostgreSQL para o Amazon RDS e o Amazon Aurora) e siga as instruções da seção Logical replication (Replicação lógica).
Utilização de uma importação de dados do Amazon S3 para migrar um RDS para PostgreSQL
Caso seus dados tenham sido armazenados usando o Amazon Simple Storage Service (Amazon S3), você poderá migrar os dados para uma instância de cluster de banco de dados do Aurora PostgreSQL. Para obter instruções, consulte Importar dados do Amazon S3 para um cluster de banco de dados do Aurora PostgreSQL.
Informações relacionadas
Conteúdo relevante
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há 2 anos