mysql自动备份清理脚本

作者:动易软件 来源:本站原创 点击数: 发布时间:2024年07月03日

问题描述:linux下配置mysql自动备份和清理脚本

解决办法:在mysql目录下创建一个mysql_auto.sh文件,赋予执行权限

#!/bin/bash

source /etc/profile # 加载系统环境变量

#存放目录

BackupDir=/data/mysqlbak/

#登录数据库用户名

user="webdb"

#访问数据库密码

password="WebDb2024!@#"

#数据库库名

DataBaseName=sqldb

#日期命名

DateTag=`date +%Y%m%d_%H%M%S`

#sql脚本名字

sqltag=$DataBaseName'_'$DateTag'.'sql

#压缩文件名字

tartag=$sqltag'.'tar'.'gz

#备份

#mysqldump -h localhost -u$user -p$password  --socket=/mnt/mysql/data/mysqld.sock $DataBaseName > $BackupDir/$sqltag 

mysqldump -u$user -p$password $DataBaseName --set-gtid-purged=OFF --socket=/data/mysql/data/mysqld.sock > $BackupDir/$sqltag 

#进行压缩并删除原文件

cd $BackupDir

tar -czf  $tartag $sqltag

rm -rf $sqltag

#定时清除文件,以访长期堆积占用磁盘空间(删除5天以前带有tar.gz文件)

find $BackupDir -mtime +30 -name '*.tar.gz' -exec rm -rf {} \;

脚本会执行mysqldump备份,并将sql文件压缩为tar.gz,清理超过30天的文件。