欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

mysql备份脚本并保留7天

时间:2021-06-29 08:26:14|栏目:Mysql|点击:

脚本需求:

每天备份mysql数据库,保留7天的脚本。

存放在/opt/dbbak目录中。

脚本名称为database_xxxx-xx-xx.sql

脚本内容:

#!/bin/bash
export NOW="$(date +"%Y-%m-%d")"
export DATA_DIR=/opt/dbbak
/usr/local/ywgh/mysql/bin/mysqldump --opt -uroot ?Cp 'mypassword' ywghblog > $DATA_DIR/ywghblog/ywghblog_$NOW.sql
find $DATA_DIR/ywghblog -type f -name "*.sql" -mtime +7 -exec rm -rf {} \;

脚本解释:

首先定义一个变量NOW取当前的年月日,

在定义一个目录的变量DATA_DIR,

然后使用mysqldump命令将要备份的库备份到指定的目录,

最后使用find命令找到指定目录的sql文件,并且将7天之外的文件删除。

-mtime + 就是找到7天之外的文件

-mtime ?C 就是找到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.sh
sh dbbackup.sh

如果一切检查没问题了,就创建定时任务自动备份你的数据吧,输入命令:

crontab -e

在打开的文件输入定时任务:

56 23 * * * /root/dbbackup.sh

然后按esc键后输入:wq退出编辑并保存文件。

好了,定时任务创建好了,每天23点56分备份执行dbbackup.sh备份数据库。

总结

上一篇:mysql5.7 生成列 generated column用法实例分析

栏    目:Mysql

下一篇:mysql-5.7.21-winx64免安装版安装--Windows 教程详解

本文标题:mysql备份脚本并保留7天

本文地址:http://www.codeinn.net/misctech/149638.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有