今天就跟大家聊聊有关怎么在MySQL中设置定时备份数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1. 查看mysqldump
root@laowang:/# which mysqldump /usr/bin/mysqldump
2. 编写脚本
编辑my.cnf文件, 指定账号与密码, 然后在脚本中引用
root@laowang:/# vim /etc/my.cnf [mysqldump] user=root password=root
脚本文件
root@laowang:/var/backups# vim mysql_backup.sh #!/bin/sh ################################################# # 备份数据库 ################################################# #mysqldump备份程序执行路径 DUMP=/usr/bin/mysqldump #备份文件存放路径 OUT_DIR=/var/database #备份文件所属权限 LINUX_USER=root #要备份的数据库名字 DB_NAME=laowang #备份的天数,之前的删除 DAYS=1 #进入备份存放目录 cd $OUT_DIR #获取当前系统时间 DATE=`date +%Y_%m_%d` #备份数据库的文件名 OUT_SQL=$DB_NAME"_$DATE.sql" #最终保存的数据库备份文件名 TAR_SQL=$DB_NAME"_$DATE.tar.gz" #开始执行备份数据库 $DUMP --defaults-extra-file=/etc/my.cnf --default-character-set=utf8 $DB_NAME > $OUT_SQL #压缩为.tar.gz格式 tar -czf $TAR_SQL ./$OUT_SQL #删除.sql格式的备份文件 rm $OUT_SQL #更改备份数据库文件的所有者 chown $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL #删除30天前的备份文件(注意:{} \;中间有空格) find $OUT_DIR -name "*.tar.gz" -type f -mtime +$DAYS -exec rm -f {} \;
3. 定时计划
root@laowang:/# crontab -e # m h dom mon dow command 10 10 * * * /var/backups/mysql_backup.sh
ctrl+X 退出
y 保存修改
看完上述内容,你们对怎么在MySQL中设置定时备份数据库有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。