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 保存修改即可。
上一篇:Mysql5.7及以上版本 ONLY_FULL_GROUP_BY报错的解决方法
栏 目:其它数据库
本文标题:MySQL定时备份数据库操作示例
本文地址:https://zz.feitang.co/shujuku/28689.html
您可能感兴趣的文章
- 12-22使用mysql记录从url返回的http GET请求数据操作
- 12-22详解sql中exists和in的语法与区别
- 12-22hive从mysql导入数据量变多的解决方案
- 12-22如何为PostgreSQL的表自动添加分区
- 12-22postgresql 实现得到时间对应周的周一案例
- 12-22sqoop export导出 map100% reduce0% 卡住的多种原因及解决
- 12-22mysql查询条件not in 和 in的区别及原因说明
- 12-22解决mysql使用not in 包含null值的问题
- 12-22解决从集合运算到mysql的not like找不出NULL的问题
- 12-22postgresql 实现多表关联删除


阅读排行
推荐教程
- 12-11mysql代码执行结构实例分析【顺序、分支、循环结构】
- 12-08添加mysql的用户名和密码是什么语句?
- 12-20PhpMyAdmin出现错误数据无法导出怎么办?
- 12-19Redis中实现查找某个值的范围
- 12-15浅析mysql迁移到clickhouse的5种方法
- 12-15CentOS7 64位下MySQL5.7安装与配置教程
- 12-14Mysql大型SQL文件快速恢复方案分享
- 12-14mysql 5.7.27 安装配置方法图文教程
- 12-13MySQL给新建用户并赋予权限最简单的方法
- 12-13关于MySQL索引的深入解析





