将MySQL数据库复制到DBserverBackup而不停止DBserver上的服务

我有一个Ubuntu的服务器与MySQL数据库上,我想复制其全部内容(数据,用户,任何东西)到我在networking上的另一台MySQL服务器。

我怎样才能获得这个结果(自动,也许使用cron)照顾安全(没有人应该能够截获数据)?

最简单的方法可能是build立一个主/从数据库场景,其中从服务器是您的备份。 如果你想要一个stream出的备份,你可以停止奴隶快照或转储它,而不会停止主也可以满足您的需求。

我不确定是否您的标准不停止数据库服务器上的服务是因为您不想停机或出于其他原因。 如果前者,那么主/从,并定期转储奴隶应该工作。

你可以通过编写一个可以通过cron运行的脚本来做到这一点。 这个脚本将1)做一个mysqldump 2)压缩该数据库转储,然后3)使用scp将压缩备份传输到从服务器。 该脚本可以是这样简单的:

#!/bin/bash mysqldump -u root -p<password> --all-databases | gzip -c | cat /path/to/db_dump.sql.gz scp /tmp/db_dump.sql.gz user@slave:/path/to/ 

那么你只需要将该数据库转储导入到从机上的mysql。