Como faço para importar dados para uma instância de banco de dados do Amazon RDS?
Quero importar dados de um banco de dados existente para uma instância do Amazon Relational Database Service (Amazon RDS) com o mínimo de tempo de inatividade.
Breve descrição
Para importar dados de um banco de dados existente para uma instância de banco de dados do Amazon RDS, conclua as seguintes etapas:
- Exporte dados do banco de dados de origem
- Carregue os dados exportados
- Importe os dados carregados para uma instância de banco de dados do Amazon RDS
Observação: o processo de importação de dados exige períodos variáveis de inatividade do servidor. A duração do tempo de inatividade depende do tamanho do banco de dados de origem que está sendo importado. A duração do tempo de inatividade também depende do tipo de mecanismo de banco de dados usado pela instância de banco de dados.
Resolução
Para importar dados para uma instância de banco de dados do Amazon RDS, conclua as seguintes etapas:
Exporte dados do banco de dados de origem
Para criar uma cópia do seu banco de dados existente, conclua as seguintes etapas com base no mecanismo de origem do banco de dados:
Amazon RDS para MySQL
Para criar uma cópia de um banco de dados MySQL existente, use ferramentas do MySQL como mysqldump e mysql. Para obter mais informações, consulte mysqldump — A Database Backup Program e mysql — The MySQL Command-Line Client no site do MySQL.
Outro método é usar a replicação para importar dados de um banco de dados MySQL de origem para o Amazon RDS. Para obter mais informações, consulte Replication no site do MySQL.
Amazon RDS para PostgreSQL
Para criar uma cópia de um banco de dados PostgreSQL existente, use ferramentas do PostgreSQL, como pg_dump, psql e o comando copy. Para obter mais informações, consulte pg_dump, psql e copy no site do PostgreSQL.
Amazon RDS para Oracle
Para exportar dados de um banco de dados Oracle existente para o Amazon RDS, use ferramentas da Oracle, como Oracle SQL Developer e Oracle Datapump.
Para bancos de dados pequenos, consulte Database copy using Oracle SQL Developer no site da Oracle.
Para bancos de dados grandes, use um link de banco de dados para realizar uma exportação e importação do Data Pump para o diretório definido na instância. Se você quiser especificar parâmetros de exportação, os links de banco de dados serão necessários. Para obter mais informações, consulte Database Links, Data Pump Export, Data Pump Import, e Specifying Export Parameters no site da Oracle.
Amazon RDS para SQL Server
Para exportar bancos de dados do SQL Server, use o backup e a restauração nativos para bancos de dados do Microsoft SQL Server. Para esse método, use arquivos .bak.
Outro método é fazer backup do seu banco de dados, armazenar o backup no Amazon Simple Storage Service (Amazon S3) e depois restaurar o backup no Amazon RDS.
Amazon Aurora MySQL
Para exportar dados de um banco de dados MySQL externo para um cluster de banco de dados do Amazon Aurora MySQL, use ferramentas nativas, como mysqldump e mydumper. Use a replicação de log binário compatível com o Aurora MySQL para reduzir o tempo de inatividade.
Outro método para migrar dados do MySQL para um cluster de banco de dados do Aurora MySQL é usar um snapshot da sua instância de banco de dados ou uma réplica de leitura do Aurora.
Observação: para todas as opções de migração, certifique-se de que todas as tabelas de origem sejam convertidas para um mecanismo de armazenamento InnoDB com formato de linha dinâmico. Isso acelera a velocidade da sua migração. Para obter mais informações, consulte Migrating your databases to Amazon Aurora.
Carregue os dados exportados
Amazon RDS para MySQL
Para carregar dados exportados, faça o carregamento para o Amazon Elastic Compute Cloud (Amazon EC2) ou para o Amazon S3:
- Para o Amazon EC2, consulte Criar uma instância do Amazon EC2 e copiar o banco de dados compactado.
- Para o Amazon S3, consulte Restauração de um backup em uma instância de banco de dados MySQL.
Amazon RDS para PostgreSQL
Para carregar dados exportados, faça o carregamento para o Amazon EC2 ou para o Amazon S3:
- Para o Amazon EC2, consulte Importar um banco de dados PostgreSQL de uma instância do Amazon EC2.
- Para o Amazon S3, consulte Importar dados do Amazon S3 para uma instância de banco de dados do RDS para PostgreSQL.
Amazon RDS para Oracle
Para carregar dados exportados para sua instância de banco de dados do Amazon RDS para Oracle, use o Oracle Data Pump com o Amazon S3 ou com um link de banco de dados:
- Para usar o Oracle Data Pump com o Amazon S3, consulte Importar dados com o Oracle Data Pump e um bucket do Amazon S3.
- Para usar o Oracle Data Pump com um link de banco de dados, consulte Importar dados com o Oracle Data Pump e um link de banco de dados.
Para obter mais informações, consulte Visão geral do Oracle Data Pump.
Amazon RDS para SQL Server
Para carregar dados exportados de um banco de dados do SQL Server para o Amazon S3, consulte Configurar o backup e a restauração nativos.
Importe os dados carregados para uma instância de banco de dados do Amazon RDS
Amazon RDS para MySQL
Para importar dados carregados de um banco de dados MySQL, use ferramentas como mysqldump, mysql e replication no site do MySQL. Se você usar o MySQL versão 5.7.9 e posterior, os dados poderão ser replicados de e para uma instância de banco de dados externa do Amazon RDS. Para migrações em vários threads, consulte Multi-threaded migration using mydumper and myloader.
Para obter mais informações, consulte Importar dados para um banco de dados MariaDB ou MySQL do Amazon RDS com tempo de inatividade reduzido.
Amazon RDS para MariaDB
Para importar dados carregados de um banco de dados MariaDB, use ferramentas como mysqldump, mysql e replication no site do MariaDB. Para grandes migrações de bancos de dados, use mydumper e myloader para realizar despejos e importações em vários threads. Para migração em vários threads, consulte Multi-threaded migration using mydumper and myloader.
Para obter mais informações, consulte Importar dados para um banco de dados MariaDB ou MySQL do Amazon RDS com tempo de inatividade reduzido.
Amazon RDS para PostgreSQL
Para importar dados carregados de um banco de dados PostgreSQL, use o psql para criar o banco de dados na instância de banco de dados e carregá-los. Para obter mais informações, consulte Usar o psql para criar o banco de dados na instância de banco de dados e carregá-los.
Para importar dados carregados do seu bucket do Amazon S3, use a função table_import_from_s3 da extensão aws_s3. Para obter mais informações, consulte Importar dados do Amazon S3 para uma instância de banco de dados do RDS para PostgreSQL.
Amazon RDS para Oracle
Para importar dados carregados de um banco de dados Oracle, use o Oracle Data Pump e o cliente de linha de comando impdp. Para obter mais informações sobre o Oracle Data Pump, consulte Visão geral do Oracle Data Pump. Para obter mais informações sobre o comando impdp, consulte Starting Oracle Data Pump Import no site da Oracle.
Amazon RDS para SQL Server
Para importar dados carregados de um banco de dados do SQL Server a partir do Amazon S3, use o procedimento rds_restore_database. Para obter mais informações, consulte Restaurar um banco de dados.
Diretrizes de importação de dados
Diretrizes gerais de importação de dados
As seguintes diretrizes se aplicam a todas as operações de importação e exportação de dados do Amazon RDS:
- Use compactação e vários threads para carregar e descarregar dados em paralelo. Se você estiver carregando uma grande quantidade de dados em paralelo, certifique-se de que a máquina cliente tenha recursos suficientes durante o processo de carregamento de dados.
- Defina a retenção de backup da sua instância de banco de dados do Amazon RDS como zero para desativar backups automáticos e melhorar o desempenho de grandes carregamentos de dados. Certifique-se de reinicializar sua instância de banco de dados do Amazon RDS para aplicar essa alteração. Quando o carregamento de dados estiver concluído, ative os backups automáticos. É uma prática recomendada criar um snapshot do banco de dados em estágios críticos do carregamento de dados. Isso permite que você restaure sua instância a partir de um snapshot, se necessário.
Observação: é uma prática recomendada não desativar os backups das instâncias de produção. Desativar os backups impede a funcionalidade de recuperação para um ponto no tempo, exclui snapshots previamente automatizados da instância de banco de dados e impede a recuperação de snapshots excluídos.
- Para reduzir a sobrecarga causada pelas operações de gravação de carregamentos de dados da Zona de Disponibilidade Múltipla (AZ), desative a Multi-AZ.
Observação: é uma prática recomendada usar a Multi-AZ em todas as instâncias de banco de dados do Amazon RDS de produção. Certifique-se de que a Multi-AZ esteja ativada assim que o carregamento de dados for concluído.
Diretrizes de importação de dados do banco de dados de origem
Use o AWS Database Migration Service (AWS DMS) para importar dados de ambientes locais para a AWS. O AWS DMS oferece migrações homogêneas e heterogêneas com tempo de inatividade mínimo. O AWS DMS tem os seguintes tipos de migração:
- Migração de dados existentes (carga total)
- Replicação contínua ou captura de dados de alteração (CDC)
- Migração de dados existentes e replicação das alterações em andamento (carga total e CDC)
Para obter mais informações, consulte Database Migration step-by-step walkthroughs.
Informações relacionadas
Práticas recomendadas do Amazon RDS
Exportar dados de uma instância de banco de dados MySQL usando replicação
Vídeos relacionados
Conteúdo relevante
- AWS OFICIALAtualizada há 3 anos
- AWS OFICIALAtualizada há 2 anos