我们都知道数据是无价,如果不对数据进行备份,相当是让数据在裸跑,一旦服务器出问题,只有哭的份了。下面将介绍mysql数据库的自动备份,大家可根据情况自行选择将备份数据存放在哪里。
第一种,数据跑在服务器上,如果只想定时把数据库备份放在服务器(此处服务器系统为centos7)上,可如下设置:
首先编写sh文件 : /usr/local/backup/bkDatabase.sh:
#!/bin/bashmysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz
添加权限: chmod u+x bkDatabase.sh
测试执行一下是否成功 ./bkDatabase.sh
系统添加定时任务
执行命令 crontab -e
编辑内容添加,示例为每天23:00定时执行脚本文件进行备份:
00 23 * * * /usr/local/backup/bkDatabaseName.sh
查看定时任务是否生效: crontab -l
重启crontab服务:service crond restart
第二种,就是自动定时备份远程服务器的mysql数据库并存储在本地(本地操作系统为window7)上,这种方法比较安全,所以推荐。
首先编写backup.bat文件。
@echo offset "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"md D:\mysite-backup\%Ymd%\C:\"Program Files"\"mysql-server 5.7.14"\bin\mysqldump --opt -hx.x.x.x database > D:\database-backup\%Ymd%\database_%Ymd%.sqlecho "数据库备份完毕"
然后修改my.ini文件添加以下内容,并重启mysql服务。
[mysqldump]user=rootpassword=xyq
点击backup.bat测试一下是否成功生成备份文件。
本地创建定时任务,实现定是备份远程数据库
1、打开 控制面板 > 管理工具 > 任务计划程序,创建任务:
2、填写触发器,设定执行时间:
3、添加执行脚本文件:
至此大功告成, 此时系统将会在指定时间会定时备份远程服务器端的mysql数据库。
(更多技术文章请访问我的个人博客:/)
如果觉得《mysql定时自动备份数据库》对你有帮助,请点赞、收藏,并留下你的观点哦!