我正在运行一个 Linux 服务器,需要增量备份(最好是每日备份)。我希望保持速度快,但备份要可靠。
我将使用 Apache 和 MySQL 数据库,有什么好的解决方案吗?
答案1
对于大多数文件,rsync 都可以很好地完成工作,但是对于数据库,您可能需要更专业的东西(或者创建一个可以通过 rsync 同步到备份然后导入到备份数据库的数据库转储文件)。
在两台服务器之间设置无密码 ssh(通过交换 ssh 密钥),然后您可以使用如下命令来复制文件(在“主”服务器上运行):
rsync -az --delete /path/to/backup/ backup-server:/path/to/backup/
这会将整个目录树 /path/to/backup 复制到主机名备份服务器上的相同路径。rsync 选项包括 -a(存档模式)保留每个文件的用户/所有者/权限,以及 -z 在传输文件之前压缩文件并在接收端自动解压缩。--delete 标志删除备份服务器上但不再位于主服务器上的文件。
在需要时使用 cron 启动此命令。
所有这些都假设 2 台服务器正在运行 Unix/Linux。
答案2
您没有透露有关平台、所使用的数据库或其他任何信息。
尽管如此,至少对于文件部分,我会研究一下 rsync,它对于大型文件树非常有效。
答案3
无需购买昂贵而复杂的软件。您只需设置一个 cron-job 来每天运行一次 RSYNC 任务即可。(当然,这假设您运行的是 UNIX/Linux。如果您运行的是 Windows,我不确定)
RSYNC 的优点是只传输新文件或已更改的文件。您甚至可以指定 RSYNC 删除主服务器上不再存在的备份服务器上的内容。