Answers:
自动执行此任务的最简单方法是将MySQL Dumps和cronjob结合使用。您可以在此站点和其他Internet站点上找到有关此主题的很多信息,但是为了完整起见:
创建一个mysqldump.sh文件
其中将包含我们将在cron作业中计划的mysql dump命令(替换用户,密码和路径以匹配您的环境):
mysqldump -u root -p<mysql_root_password> --all-databases | gzip > /desired/backup/folder/mysqldb_`date +%F`.sql.gz
编辑:如果您希望脚本将备份存储在远程位置,只需挂载相应的设备或共享并使用脚本中的挂载路径。
测试脚本
确保脚本具有执行权限:
chmod +x /path/to/mysqldump.sh
执行脚本:
sh /path/to/mysqldump.sh
并测试它是否正常工作(备份文件将在指定的备份文件夹中创建)。
创建并安排新的Cron作业
在命令提示符下键入
sudo crontab -e
并在文件底部添加以下行:
30 23 * * * /path/to/mysqldump.sh
这将每天23:30执行脚本。
扩展这个简单的脚本
实际上,您可以做很多事情来改进这种简单的备份方法:
所以不要在这里结束并尝试!:-)
使用备份工具或基于云的备份服务
尽管上述方法是最简单的方法之一,并且可以扩展以适合您的特定需求,但是值得一提的是,还有其他替代方法:
请切记,我与上述任何解决方案和服务都没有任何关系,我列出这些信息仅供参考,因此使用它们的风险自负。
有用的链接/参考:
Cron-> https://en.wikipedia.org/wiki/Cron
MySQL转储-> https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html
sudo crontab -e
并且不要忘记使脚本可执行:chmod +x /path/to/mysqldump.sh
date +%F
-会自动选择适合用户所在地区的Year + month + date的组合(例如,我会得到YYYY-MM-DD
)。