通过命令行脚本完整备份 GoDaddy 站点

Full backup of GoDaddy site via command-line script

有没有一种简单的方法可以通过命令行在像 GoDaddy 这样的主机上自动备份整个网站?

到目前为止,我知道我需要递归地备份主目录中的所有文件。我可能会自动 SFTP 连接并发出 get -R * 命令来获取完整的文件转储,或者只使用 SCP。

难题的另一半是获取所有可用的表格,主要是 WordPress 表格。我的猜测是,也许我可以发出一个命令行命令,将数据库内容转储到一个平面文件中,然后我也可以通过 SFTP 提取该文件。如果存在这样的命令,我的计划是结合使用 Telnet 和 EXPECT 脚本登录到 GoDaddy 站点,发出一些命令,然后断开连接回到我的本地 shell.

最终结果应该是我有一个文件夹,其中包含我所有的服务器内容,以及来自服务器的 SQL 数据库的平面文件备份。我知道有 WordPress 备份插件,但它们往往会提供大量 ZIP 文件,而我只需要直接原始数据,这样我就可以将其放在我的私人 SVN 服务器中进行备份和版本控制。

所以我的问题是:如何通过命令行将 GoDaddy 服务器上的所有数据库提取到一个文件中?

谢谢。

最后,我找到了可行的解决方案。

首先,我使用了 2 个单独的 expect scripts

  1. Telnet 到服务器,删除旧备份,使用 mysqldump 通过 mysqldump -u db_owner -p --all-databases > output.sql 将所有表提取到一个平面文件,并创建一个包含所有内容的大量 tarball。注销。
  2. 使用 SCP 拉取新创建的 tarball,将其解压缩到本地 SVN 控制的工作副本文件夹。
  3. 使用第二个 expect 脚本登录服务器并删除备份。注销。

从那里,我只是根据需要手动 svn addsvn commit