mysql备份脚本

这是一个用于自动备份MySQL数据库的shell脚本。脚本首先定义了数据库连接信息、备份目录和日期,然后检查并创建备份目录,获取所有数据库名,并为每个数据库创建单独的备份目录。接着,使用mysqldump进行数据库备份,最后清理60天前的旧备份。脚本确保了数据库的定期备份和历史数据的安全存储。
摘要由CSDN通过智能技术生成
#!/bin/bash

#数据库信息
DB_HOST=localhost
DB_USER=root
DB_PASS=fjks@jktj


#备份目录
BACKUP_DIR=/backup/full_backup/mysql


#当前日期
DATE=$(date -d  "1 days ago" +%Y%m%d)


#确认目录
[ -d $BACKUP_DIR  ] || mkdir -p  $BACKUP_DIR


#查询所有数据库
#DATABASES=$(mysql -uroot -p123456  -e "show databases;" | grep -Ev "Database|sys|information_schema")
#DATABASES=$(mysql -uroot -p123456 -e "SELECT SCHEMA_NAME FROM information_schema.SCHEMATA WHERE SCHEMA_NAME NOT IN ('sys','mysql','information_schema','performance_schema');" | grep -v "SCHEMA_NAME","ken.io")
DATABASES=$(mysql -u${USER} -p"${DB_PASS}" -h${DB_HOST}  -e "show databases;"|grep -Ev  "Database|_schema|_bak")


#分别创建不同库的备份目录
for db_dir in $DATABASES
do
     mkdir -p ${BACKUP_DIR}/${db_dir}
done


#数据库轮询备份
for db in $DATABASES
do
    #innodb引擎备份命令,要用--master-data=2参数,需要开启log-bin和设置server-id
    #mysqldump -u$DB_USER -p$DB_PASS -h$DB_HOST  --single-transaction  --master-data=2   --events   --flush-logs  --routines  --triggers -B  ${db} | gzip > $BACKUP_DIR/${db}/${db}_$DATE.sql.gz
    sleep 1
    /www/wdlinux/mysql/bin/mysqldump -u$DB_USER -p$DB_PASS -h$DB_HOST  --single-transaction   --events    --flush-logs  --routines  --triggers -B  ${db} | gzip > $BACKUP_DIR/${db}/${db}_$DATE.sql.gz

    #多引擎混合备份命令,例如myisam,innodb混合,要用--master-data=2参数,需要开启log-bin和设置server-id
    #mysqldump -u$DB_USER -p$DB_PASS -h$DB_HOST  --master-data=2   --events  --ignore-table=mysql.events   --flush-logs  --routines  --triggers -B  ${db} | gzip > $BACKUP_DIR/${db}/${db}_$DATE.sql.gz
done

#清理60天以前的备份
find $BACKUP_DIR -type f  -mtime +60 -name "*.gz" -exec rm -f {} \;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值