如何根据需要镜像 MySQL 数据库?

如何根据需要镜像 MySQL 数据库?

我如何让本地 MySQL 数据库始终更新互联网上的镜像?

答案1

您需要设置 MySQL 复制。您可以在此处找到详细的文档:

http://dev.mysql.com/doc/refman/5.0/en/replication.html

我同意 Craig 的观点,但我在互联网上使用 MySQL 和 SSL 时遇到了问题。我实际上使用了 SSH 隧道,效果非常好。我使用一个名为 autossh 的包装器(http://www.harding.motd.ca/autossh/) 来管理中断的连接。

如果您有兴趣,这里是我使用的命令(请注意,您只需要在隧道的一端进行设置,因为此连接会创建双向通信通道):

# /usr/bin/ssh -2 -N -o ServerAliveInterval=15 -i /root/.ssh/id_rsa -N -R \
  13306:127.0.0.1:3306 -L 13306:127.0.0.1:3306 root@<REMOTEIP>

这样做的目的是在两端的端口 13306 上创建一个隧道,连接到另一端运行的 MySQL 实例。要设置复制,请将“主”服务器指向端口 13306 上的 127.0.0.1。要使用 autossh 包装它,请使用以下命令:

# /usr/local/bin/autossh -2 -fN -M 20000 -o ServerAliveInterval=15\
 -i /root/.ssh/id_rsa -N -R 13306:127.0.0.1:3306 -L 13306:127.0.0.1:3306 root@<REMOTEIP>

祝你好运!

答案2

您可以设置 MySQL 以通过 SSL 执行复制。我们通过 SSL 将一台服务器从中西部复制到西海岸,每天可轻松复制 15 万多条记录。但是,这需要访问从属服务器(问题中的镜像)的配置。

答案3

我认为你正在寻找 MySQL 复制

http://www.howtoforge.com/mysql_database_replication

相关内容