mysql 某个日期加七天_mysql8.0自动备份加定时删除7天前的数据

环境说明:CentOS 7.5 64位

mysql8.0

【第一步】创建备份文件存储目录

mkdir /mysqldate

【第二步】查找mysql数据库文件所在目录

1.登陆mysql

mysql -u root -p #回车会提示你输入密码

Enter password:#输入你的数据库账号密码

2.执行查找命令

show variables like '%datadir%';

#查找的结果就是mysql数据库文件目录

【第三步】完成mysqldump配置

vi /etc/my.cnf

#未维护写入下列内容

[mysqldump]

host=localhost

user=账户名

password=账户密码

【第四步】创建一个执行sh文件

vi /usr/sbin/db_backmysql.sh

【第五步】写入下列内容

#mysql8.0自动备份脚本

#备份路径,第一步创建的文件夹绝对路径

backupdir=/opt/mysqldata

#日志路径,此项根据实际需求进行添加

mysql_backup_log="${backupdir}/mysql_backup.log"

#当前日期

newdate=$(date +"%Y-%m-%d")

#备份文件名称+文件具体存储路径

filename=$backupdir/mysql_$newdate.sql.gz

#脚本执行日志

#开始

echo "开始备份>> 当前时间:$(date "+%Y-%m-%d %H:%M:%S")">>"$mysql_backup_log"

#备份所有

/usr/bin/mysqldump --add-drop-table --lock-tables --all-databases --compact > $filename

#结束

echo "结束备份>> 结束时间:$(date "+%Y-%m-%d %H:%M:%S")>>备份路径:$filename">>"$mysql_backup_log"

#只保留最近七天的数据,七天前的备份数据删除

find $backupdir -name "mysql_*.sql.gz" -type f -mtime +7 -exec rm -rf {} \;

【第六步】添加权限

#需进入sh脚本所在目录,或者添加绝对路径地址

chmod u+rwx db_backmysql.sh

【第七步】运行sh脚本文件测试

#需进入sh脚本所在目录,或者添加绝对路径地址

./db_backmysql.sh

【第八步】查看执行结果

cd /opt/mysqldata #进入备份文件目录

ll #查看当前目录下的所有文件

vi mysql_backup.log #查看日志记录结果

【第九步】添加cron定时任务

crontab 相应配置引用,可跳转此连接查看相应介绍

1.检测cron是否安装,未安装请自行安装

rpm -qa |grep crontab

2.开启crond服务

systemctl start crond

3.检查crond服务状态

systemctl status crond

【第十步】配置脚本定时任务信息

1.打开cron配置文件

vi /etc/crontab

2.写入任务信息

#相应时间参数自行设置,不懂请自行查询crontab表达式代表信息

00 12 * * * root /usr/sbin/db_backmysql.sh

【第十一步】重启crond服务

systemctl restart crond

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值