时间:2021-05-24
脚本需求:
每天备份mysql数据库,保留7天的脚本。
存放在/opt/dbbak目录中。
脚本名称为database_xxxx-xx-xx.sql
脚本内容:
#!/bin/bashexport NOW="$(date +"%Y-%m-%d")"export DATA_DIR=/opt/dbbak/usr/local/ywgh/mysql/bin/mysqldump --opt -uroot –p 'mypassword' ywghblog > $DATA_DIR/ywghblog/ywghblog_$NOW.sqlfind $DATA_DIR/ywghblog -type f -name "*.sql" -mtime +7 -exec rm -rf {} \;脚本解释:
首先定义一个变量NOW取当前的年月日,
在定义一个目录的变量DATA_DIR,
然后使用mysqldump命令将要备份的库备份到指定的目录,
最后使用find命令找到指定目录的sql文件,并且将7天之外的文件删除。
-mtime + 就是找到7天之外的文件
-mtime – 就是找到7天之内的文件
-exec就是执行后边的命令
请根据自己的需求修改脚本。
知识点扩展:自动备份MYSQL数据库脚本
vi dbbackup.sh在打开的编辑器输入:
#!/bin/bash/usr/local/mysql/bin/mysqldump -uuser -ppasswd databasename > /home/wwwroot/backup/date_$(date '+%Y%m%d').sql命令的意思是用mysqldump导出名为databasename的数据库到/home/wwwroot/backup/文件夹并命名为date_日期.sql,-u后面的是你的Mysql的用户名,-p后面的是Mysql密码,databasename是要备份数据库名字,把这三个替换成自己的。
修改权限并执行备份脚本看能否备份成功:
chmod +x dbbackup.shsh dbbackup.sh如果一切检查没问题了,就创建定时任务自动备份你的数据吧,输入命令:
crontab -e
在打开的文件输入定时任务:
56 23 * * * /root/dbbackup.sh
然后按esc键后输入:wq退出编辑并保存文件。
好了,定时任务创建好了,每天23点56分备份执行dbbackup.sh备份数据库。
总结
以上所述是小编给大家介绍的mysql备份脚本并保留7天,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
如下脚本用于mysql全库定时备份mysql_dump_script.sh#!/bin/bash#保存备份个数,最多保留4个文件number=4#备份保存路径b
一个简单的mysql全量备份脚本,备份最近15天的数据。备份#每天备份mysql数据库(保存最近15天的数据脚本)DATE=$(date+%Y%m%d)/hom
Linux下使用shell脚本,结合crontab,定时备份MySQL下多个数据库,每次备份的数据存放于以日期命名的文件夹中,同时删除超过设定的备份保留时间的数
每天定时备份mysql数据库任务,删除指定天数前的数据,保留指定天的数据;需求:1,每天4点备份mysql数据;2,为节省空间,删除超过3个月的所有备份数据;3
前言本文介绍的是一个简单的在Windows下备份Mysql的BAT脚本,脚本使用mysqldump命令来备份一个指定的Mysql数据库到一个文件,文件格式为%d