4

在我的 CentOS VPS 服务器上,我目前使用脚本通过自动 SFTP 会话备份所有托管的网站文件。我为此使用 WinSCP。不幸的是,这不包括我拥有大约 20 个 MySQL 数据库的备份。

最好将数据库的预定转储运行到一个文件夹中,然后通过 ftp 将其转储,或者我可以在会话期间使用 WinSCP 将它们单独转储到一个文件夹中吗?我更喜欢后一种选择。

如果是这样,我该如何实现?

我想在我的本地 Windows PC 上完成我的数据库的工作备份,如果需要,可以恢复它。

提前致谢

4

2 回答 2

3

您可以在开始下载之前使用 WinSCP 命令call运行mysqldump, (即在getorsynchronize命令之前)。

示例见:
https ://winscp.net/eng/docs/scriptcommand_call

您可能需要增加会话超时(默认为 15 秒)以允许call及时完成。


或者,您可以在启动 WinSCP 脚本之前mysqldump使用更合适的工具(例如plink(来自 PuTTY 套件))运行:
https ://the.earth.li/~sgtatham/putty/latest/htmldoc/Chapter7.html

于 2013-09-16T07:16:38.487 回答
1

scp(以及您正在使用的 Windows 客户端变体WinSCP)最适合文件复制。您可以使用ssh运行命令来转储每个数据库,然后复制它们。

但是您最好设置每个在本地运行到 CentOS 服务器的数据库的预定转储。

如果您碰巧为您的网站使用了一种著名的内容管理系统(如 WordPress 等),您应该研究可用于这些系统的各种优秀且免费的(如语音免费,如啤酒一样免费)备份插件。

于 2013-09-14T19:07:08.117 回答