【发布时间】:2009-06-02 10:17:01
【问题描述】:
我需要知道如何定期备份我的 MySQL 数据库并将备份下载到我的本地服务器。我使用的是navicat,它有一个简单的备份界面和任务计划工具,但它备份数据库并将备份存储在服务器本身上。我希望有一种方法可以将备份一次下载到我的本地系统,而不是将它们与数据库放在同一台服务器上。
【问题讨论】:
-
可能更适合服务器故障?
我需要知道如何定期备份我的 MySQL 数据库并将备份下载到我的本地服务器。我使用的是navicat,它有一个简单的备份界面和任务计划工具,但它备份数据库并将备份存储在服务器本身上。我希望有一种方法可以将备份一次下载到我的本地系统,而不是将它们与数据库放在同一台服务器上。
【问题讨论】:
设置一个服务器 cron,它会在一段时间后(例如 24 小时)运行 mysqldump 命令
mysqldump -hMY_HOST.COM -uDB_USERNAME -pDB_PASSWORD USERNAME_DATABASENAME > MysqlDump.sql
创建转储文件后。设置另一个 cron 以将此转储复制到目标服务器(最好是本地),使其以与上述 cron 相同的间隔执行。
scp user@MY_HOST.COM:/some/path/file user2@MY_HOST2.COM:/some/path/file
注意:此命令可能会导致服务器负载过高(确保在服务器负载最小时执行它们)
【讨论】:
除了 mysqldump,还有一些其他的备份选项。这些主要是为了解决 mysqldump 导致高负载/长重新加载时间的问题。
【讨论】:
你应该试试 mydumper - https://answers.launchpad.net/mydumper/+faq/338
它有一个守护模式,可以为你定期备份,由一些优秀的 MySQL 工程师开发。我相信它已经被称为 mysqldump,就像 dba 想象的那样; )
【讨论】: