生活不易、且行且珍惜。网站首页 程序人生
Linux下实现数据库每天自动备份
发布时间:2018-12-29 21:55编辑:zj 阅读:文章分类: Linux互动QQ群:170915747
前两天数据库操作的时候误删了几条数据,找不回了,才发现没有搞备份哇~ 所以今天加了个自动备份,记录一下操作。
linux下如何实现mysql数据库每天定时自动备份,并删除60天内的备份文件。
1、创建备份文件:
可以根据自己的实际情况选择在哪个目录下创建文件,我这里是在data下创建的backSql文件夹。
cd data mkdir /backSql //脚本文件放在data/backup中 cd /data mkdir /backup cd backup
2、创建备份Shell脚本:(bkZjBlog是我自己命名的)
//这个命令是编辑bkZjBlog文件 vi bkZjBlog.sh //输入以下内容 #!/bin/bash mysqldump -uusername -ppassword DatabaseName > /data/backSql/DatabaseName_$(date +%Y%m%d_%H%M%S).sql //这条是找出60天前的备份文件并删除掉(脚本文件不要放在备份文件中,不然也会被删掉..) find /data/backSql/ -mtime +60 -type f | xargs rm -f
编辑好后保存即可。
注意:
vi编辑需要按i后才能输入,编辑完按esc,shift+;,输入wq为并存并退出。
username:用户名
password:密码
DatabaseName:要备份的数据库名称DatabaseName_$(date +%Y%m%d_%H%M%S).sql(最后格式DatabaseName_20181229_174804.sql)
3、添加可执行权限:
chmod u+x bkZjBlog.sh
添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;
./bkZjBlog.sh
执行完到backSql目录下即可看到备份好的sql文件。
注:这里可能会报错
Warning: Using a password on the command line interface can be insecure. (在命令行界面上使用密码可能不安全。)
导出MySQL数据库的时候采用mysqldump命令,出现"Warning: Using a password on the command line interface can be insecure."的错误提示。这个问题应该是在MySQL5.6+版本的时候就有出现,可能是为了确保数据库的安全性采用的保护机制。
我出现了这个问题,但是备份还是好了。所以还没有去解决。
-bash: ./bkZjBlog.sh: /bin/bash^M: bad interpreter: No such file or directory
4、添加计划任务
执行命令:
crontab -e
这时就像使用vi编辑器一样,可以对计划任务进行编辑。
输入以下内容并保存:
30 01 * * * /data/backSql/bkZjBlog.sh
具体是什么意思呢?
意思是每天早上1:30执行一次shell脚本“/data/backSql/bkZjBlog.sh”。
完成。Linux很多命令还是需要去记啊,不然很不方便·~~
#去评论一下
标签:#Linux#数据库
版权声明:本博客的所有原创内容皆为作品作者所有
转载请注明:来自ZJBLOG 链接:www.zjhuiwan.cn
「万物皆有时,比如你我相遇」
感谢大佬打赏【请选择支付宝或微信,再选择金额】
使用微信扫描二维码完成支付