Tenho dois propósitos para isso:
- Para ter um backup externo no caso de um problema regional com o Amazon Web Services.
- Para copiar dados de produção de uma conta de faturamento de produção para uma conta de faturamento beta.
Atualmente, não parece que a Amazon ofereça suporte a nenhum desses dois casos de uso prontos para uso.
Eu vi mysqldump e xtrabackup (veja a postagem do formulário ) mencionados.
Eu também vi um processo mais complicado (documentado aqui )
- Um novo servidor RDS na conta de cobrança de origem (prod) é gerado a partir de um backup recente.
- Uma nova instância do EC2 é gerada e tem acesso ao servidor RDS na etapa 1.
- mysqldump é usado para fazer um backup deste banco de dados.
- O backup é copiado para um local externo (S3?).
- Em uma conta e/ou região separada, um novo servidor RDS é ativado.
- O dump do banco de dados é importado.
Dicas e sugestões são apreciadas.
A maneira recomendada de fazer backup do RDS é com backups automáticos e snapshots de banco de dados . Os snapshots de banco de dados são basicamente os mesmos que os snapshots do EBS, que são armazenados no S3 nos bastidores, mas estão disponíveis apenas na mesma região.
Se você precisar de tolerância a falhas entre regiões (bom plano!), não há como restaurar seus dados em outra região sem fazê-lo "da maneira mais difícil" de um mysqldump. Suas alternativas são fazer backup usando mysqldump (lento e terrível para qualquer conjunto de dados de tamanho razoável) ou configurar seu próprio escravo baseado em EC2 em outra região e fazer backup usando qualquer método disponível (xtrabackup, instantâneos EBS, etc). No entanto, você está de volta ao gerenciamento de suas próprias instâncias do MySQL, então você também pode abandonar o RDS completamente.
Para o meu dinheiro, o RDS não oferece absolutamente nenhum benefício de qualquer maneira e muitas desvantagens em desempenho, flexibilidade e confiabilidade. Eu me perguntaria qual valor o RDS oferece a você.
Eu tive o mesmo problema. Minha solução foi escrever um script bash simples . No entanto, é limitado a uma única região.
Segue o script em questão:
O AWS RDS agora oferece suporte à cópia de snapshots entre regiões e entre contas , o que permitirá que você complete suas metas simplesmente usando o RDS.
Você ainda precisa usar um método de script de despejo para obter backups para o S3 neste momento. A capacidade de usar o S3-IA ou o Glacier seria boa em termos de economia de custos, pois os custos de backup do RDS estão no S3 Standard ou superior (variam de acordo com o db).