如何创建远程Amazon RDS MySQL数据库的本地备份?


12

如何创建远程Amazon RDS MySQL数据库的本地备份?我需要知道的是如何对MySQL数据库(不是远程Amazon快照)进行完整的本地备份,该备份可用于在任何MySQL服务器(当然是相同版本)上的任何位置还原到新数据库。

注意:我知道如何通过MySQL从平面文件导入数据。这是我的连接方式:

mysql -h mydb.xxxxx.us-east-1.rds.amazonaws.com -u myuser -P 3306 -p

这是我加载单个数据库表的方式:

mysql> LOAD DATA LOCAL INFILE 'C:/Temp/t1.tab' INTO TABLE t1 LINES TERMINATED BY '\r\n';

是否可以将保存在AWS上的快照之一下载到我的本地计算机上?我不希望直接连接到数据库来获取这些备份。
modulitos

Answers:


9

mysqldump --databases mydb -h xxxxx.us-east-1.rds.amazonaws.com -u myuser -P 3306 -p > rds.sql


答案是:mysqldump-数据库myDB -v -h mydbInst.xxxxxx.us-east-1.rds.amazonaws.com -u myuser -P 3306 -p> rdsmyDB.sql
djangofan 2011年

2
对于中等大小的数据库,此操作将失败。RDS实例超时并断开连接,不幸的是mysqldump将其解释为“下载完成”。在mysqldump失败之前,我只能下载175MB数据库中的大约30MB。
Cerin

嗨,我正在尝试使用它在aws中创建Mysql的远程bakup。即使使用正确的凭据,我也会拒绝错误访问,这是因为aws ssh安全吗?我从Windows和本地jenkins服务器都尝试了相同的错误
Utsav Gupta

1
我得到的命令相同:错误:1045:拒绝root用户对root用户的访问
Sushiavam

1
@modulitos,您必须从快照创建一个实例,然后将其实例mysqldump
Raisen

1

如果您使用的是InnoDB,则mysqldump应该与--single-transaction一起使用。我们使用AWS微型实例进行备份,然后在内部传输/归档该备份。还配置为运行jenkins从属服务器,所有这些都通过我们在内部运行的中央jenkins服务器进行管理。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.