Você pode restaurar um arquivo de despejo MySQL de um bucket S3 para uma instância do RDS?

6

Estou investigando a execução de despejos normais do MySQL em um bucket S3 como parte de uma estratégia de recuperação de desastres (em parte estimulada pelo custo zero atual de transferência de dados de entrada!). No caso de um desastre, eu gostaria de restaurar o arquivo de despejo do S3 para uma nova instância do RDS. Apesar da extensa pesquisa, não consigo encontrar nenhum exemplo disso. Alguém sabe se isso é possível?

Para dar um pouco de contexto, trata-se de um banco de dados MySQL de 24x7 de 24x7 de luz de gravação. Estou planejando usar a replicação do MySQL em um escravo, do qual podemos tirar dumps para enviar para o S3 em caso de falha do host (usamos o mesmo provedor de hospedagem para o mestre de replicação e o escravo, embora estejam em data centers diferentes ).

    
por Mark B 15.09.2011 / 18:41

3 respostas

2

Atualmente, não há esse recurso no RDS, conforme explicado em:

link

Mas os caras da AWS recomendam este procedimento:

link

    
por 12.01.2012 / 17:52
1

Funcionou para mim quando tentei fazer o backup de um servidor mysql em execução na minha máquina para o RDS mysql. (minha máquina estava rodando windows, mas deveria funcionar também para o mysux lump do linux)

mysqldump -u root -p --databases 'mydatabase' > dump.sql

depois, basta fazer o upload para a instância do RDS:

mysql -h myrds.com -u myuser -p < dump.sql

    
por 15.09.2011 / 19:18
1

Você pode usar a ferramenta AWS CLI e STDIN na CLI ("-") para isso:

mysql -u db_user -ppassword database_name < aws s3 cp s3://mysqldump_bucket_name/mysqldump.sql -

A parte - do comando aws s3 cp canaliza a saída para STDOUT, que é lida pelo mysql.

    
por 04.04.2018 / 12:35