1.在根目录创建一个放备份的目录,本例目录名为webbak[root@XiaoFeng /]#mkdir webbak
2.在webbak目录里面再建两个目录一个放*.sql文件,一个放压缩后的包,目录名mysql和sqltar[root@XiaoFeng webbak]#mkdir mysql sqltar
3.写脚本放在webbak目录里[root@XiaoFeng webbak]#vim sqlbak.sh
写入下面内容,自己修改你的数据库名/用户名/密码
1 | #!/bin/sh |
4.要给脚本执行权限[root@XiaoFeng webbak]#chmod +x sqlbak.sh
5.建个定时计划,来每天晚上23点30分来执行该脚本,输入下面登录后会打开vim[root@XiaoFeng webbak]#crontab -e
6.在打开的vim界面里写入30 23 * * * /webbak/bak.sh
这个计划完成了,但是每天都备份*.sql文件太多了,查看时比较眼晕,下面再来为每个月的备份打包成一个文件,并删除打包过的文件
1.写一个打包脚本[root@XiaoFeng webbak]#vim sqltar.sh
2.写入下面内容,自己修改你的数据库名
1 | #!/bin/sh |
3.要给脚本执行权限[root@XiaoFeng webbak]#chmod +x sqltar.sh
4.建个定时计划,来每月第1天23点30分执行该脚本,输入下面登录后会打开vim[root@XiaoFeng webbak]#crontab -e
5.在打开的vim界面里加入一行30 23 1 * * /webbak/sqltar.sh
1.写一个打包脚本[root@XiaoFeng webbak]#vim webbak.sh
2.写入下面内容,自己修改你的网站名和网站的目录
1 | #!/bin/sh |
3.要给脚本执行权限[root@XiaoFeng webbak]#chmod +x webbak.sh
4.建个定时计划,来每周天23点30分执行该脚本,输入下面登录后会打开vim[root@XiaoFeng webbak]#crontab -e
5.在打开的vim界面里加入一行30 23 * * 7 /webbak/webbak.sh
6. MySQL 5.6会有个warning告警:
Warning: Using a password on the command line interface can be insecure 脚本解析到这个warning,则全部失败。
解决办法:
vim /etc/mysql/my.cnf
[mysqldump]
user=your_backup_user_name
password=your_backup_password
使用命令时不用带账号密码了:/usr/local/mysql/bin/mysqldump db > bak.sql
修改完配置文件后, 只需要执行mysqldump 脚本就可以了;备份脚本中不需要涉及用户名密码相关信息;
本文为 小风原创文章,转载无需和我联系,但请注明来自 小风博客www.hotxf.com