Mover Dados MySQL de 1 servidor RDS para outro

1

Como faço para mover determinados dados (retornados por uma consulta simples) de um banco de dados no RDS da AWS para outro?

Uma interrupção de até 20 minutos é aceitável, embora não seja a preferida.

Meu plano atual é usar o Sequel Pro para realizar uma exportação e, em seguida, importá-lo para o banco de dados de destino, mas estou me perguntando se existe uma maneira melhor de fazê-lo.

BTW: Banco de dados é principalmente InnoDB e algumas tabelas MyISAM.

    
por iqq 06.06.2011 / 01:24

5 respostas

1

Sua pergunta está longe de ser clara, mas se eu interpretar corretamente o método mais simples é usar uma consulta select into , que insere os resultados de uma consulta em uma tabela, que pode ser copiada para o sistema de destino usando dump e carregar, ou replicado como por sugestão do coredump.

    
por 06.06.2011 / 09:39
0

Você não pode configurar a replicação? Seria a maneira mais segura / rápida de fazê-lo, mas não tenho certeza se você pode replicar apenas algumas consultas (você pode fazê-lo com bancos de dados específicos)

    
por 06.06.2011 / 07:03
0

Se forem bancos de dados MySQL, talvez seja possível usar o mecanismo federado (que facilita o acesso a bancos de dados em servidores remotos) para atualizar o banco de dados remoto usando uma tarefa agendada para atualizar quantas vezes forem necessárias.

    
por 06.06.2011 / 09:40
0

A única maneira que posso pensar em mover dados de um servidor RDS para outro RDS é para mysqldump a tabela de uma instância MySQL RDS de origem. Em seguida, carregue a tabela na Instância RDS do MySQL de destino.

AVISO: Pode haver cobranças pela transferência de dados !!!

De acordo com a documentação do AWS RDS em Data Transfer

O preço abaixo é baseado nos dados transferidos “in” e “out” do Amazon RDS.

Region: (Pricing Varies Between Regions, Shown is North Virgina Pricing)

                            Pricing
Data Transfer IN
All data transfer in        $0.000 per GB
Data Transfer OUT***
First 1 GB / month          $0.000 per GB
Up to 10 TB / month         $0.120 per GB
Next 40 TB / month          $0.090 per GB
Next 100 TB / month         $0.070 per GB
Next 350 TB / month         $0.050 per GB
Next 524 TB / month         Contact Us
Next 4 PB / month           Contact Us
Greater than 5 PB / month   Contact Us

Notas de rodapé

  • Os dados transferidos entre as instâncias do Amazon RDS e do Amazon EC2 na mesma zona de disponibilidade são gratuitos.
  • Os dados transferidos entre zonas de disponibilidade para replicação de implantações Multi-AZ são gratuitos.
  • Instâncias de banco de dados do Amazon RDS fora da VPC: Para dados transferidos entre uma instância do Amazon EC2 e uma instância de banco de dados do Amazon RDS em diferentes zonas de disponibilidade da mesma região, não há cobrança de transferência de dados para o tráfego dentro ou fora da instância de banco de dados do Amazon RDS. Você é cobrado apenas pela Transferência de dados dentro ou fora da instância do Amazon EC2, e taxas padrão da Transferência de dados regional do Amazon EC2 são aplicadas (US $ 0,01 por GB in / out).
  • Instâncias de banco de dados do Amazon RDS dentro da VPC: Para dados transferidos entre uma instância do Amazon EC2 e a instância de banco de dados do Amazon RDS em diferentes zonas de disponibilidade da mesma região, as cobranças do Amazon EC2 aplicam-se nos dois lados da transferência.
  • Os dados transferidos entre os serviços do Amazon RDS e da AWS em diferentes regiões serão cobrados como Transferência de dados da Internet nos dois lados da transferência.
  • ** Como parte do nível de uso gratuito da AWS, os novos clientes da AWS receberão gratuitamente 15 GB de transferência de dados a cada mês agregados em todos os serviços da AWS por um ano.
  • *** Os níveis de taxa levam em consideração seu uso agregado de transferência de dados no Amazon EC2, Amazon S3, Amazon RDS, Amazon SimpleDB, Amazon SQS, Amazon SPS, AWS Storage Gateway, Amazon DynamoDB e Amazon VPC.
por 17.08.2012 / 22:41
0

Este tópico é um pouco antigo. A AWS agora oferece o produto Data Pipeline para essa finalidade. No entanto, eu tive a mesma necessidade de mover dados parciais regularmente de um banco de dados para outro (diferentes servidores RDS). A abordagem que tomei foi criar uma tarefa cron hospedada com o Iron.io. O serviço também é executado no AWS US East, portanto, não há muita latência de rede. Conecte-se a um servidor, pegue seus dados e formate-os. Em seguida, conecte-se ao outro servidor e atualize-o. Você pode executar trabalhos com o Iron Worker com freqüência a cada 5 minutos.

    
por 27.03.2013 / 21:19