将WordPress和自动MySQL备份到不同的主机

时间:2015-07-03 作者:Foo Bar

我正在进行以下设置。本地网络中的开发计算机和具有真实internet域的生产服务器。在我的开发人员计算机上为我的主题开发PHP/CSS文件是通过git, 我可以轻松地将它们部署到生产系统中。到目前为止,一切正常。

但在我的开发系统上,我还希望始终从实际系统中获得一个合理的新数据库转储。现在,快速而肮脏的方法就是编写一个cronjob来执行mysqldump 在生产服务器和mysql < dumpfile 在开发人员计算机上。但由于Wordpress将主机名保存在其数据库中,这将导致开发系统无法工作,因为所有链接都是错误的。

我知道https://codex.wordpress.org/Moving_WordPress, 但是这些步骤需要大量的手工操作(编辑配置文件等),因此这不利于自动化。嗯,做了很多chmodsedmv 诸如此类的操作也可以自动化,但这感觉有点“黑客”。

如何正确、干净地处理此类自动DB备份,而又不破坏数据?

1 个回复
SO网友:anu

您可以使用BackupBuddy之类的插件,但我更喜欢编写脚本并使用wp-cli, 读取wp config。这意味着您不必担心mysql凭据。

wp cli允许您:

导出数据库:wp db export <filename>wp db import <filename>wp search-replace <search-string> <replace-string>

执行wp export 在远程服务器上,通过ssh将sql导出文件通过scp复制到本地计算机wp import 本地执行wp search-replace 然后您可以将其添加到cron,但我更喜欢手动运行它-将db从生产环境同步到本地环境只需不到一分钟的时间。

结束