MySQL定时备份数据库操作示例
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《MySQL索引操作技巧汇总》、《MySQL常用函数大汇总》、《MySQL日志操作技巧大全》、《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》及《MySQL数据库锁相关技巧汇总》
希望本文所述对大家MySQL数据库计有所帮助。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341