#!/bin/bash backupdir=/data/backup/db/sql idatetime=`date +%Y%m%d_%H%M%S` #表名称 sysTablePrefix='base_ biz_ crm_ d_ data_ dsj_ h_ qrtz_ third_' tablePrefix=$(docker exec -i mysql mysql -u用户名 -p密码 数据库 -Bse "自定义SQL查询表前缀") mkdir -p ${backupdir}/$(date +%Y%m%d) echo '>>>>>>>>>>'$(date)'文件夹创建成功' echo '>>>>>>>>>>数据库备份开始,当前时间:'$idatetime for sysTable in $sysTablePrefix; do docker exec -i mysql mysqldump -u用户名 -p密码 --single-transaction --master-data --quick --default-character-set=utf8 数据库 $(docker exec -i mysql mysql -u用户名 -p密码 数据库 -Bse "show tables like '${sysTable}%'")| gzip > ${backupdir}/$(date +%Y%m%d)/数据库_${sysTable}${idatetime}.sql.gz echo '>>>>>>>>>>'${sysTable}'数据库备份结束,当前时间:'$(date +%Y%m%d_%H%M%S) done echo '>>>>>>>>>>系统表备份结束,当前时间:'$idatetime for table in $tablePrefix; do docker exec -i mysql mysqldump -u用户名 -p密码 --single-transaction --master-data --quick --default-character-set=utf8 cloudpivot $(docker exec -i mysql mysql -u用户名 -p密码 数据库 -Bse "show tables like '${table}%'")| gzip > ${backupdir}/$(date +%Y%m%d)/数据库_${table}_${idatetime}.sql.gz echo '>>>>>>>>>>'${table}'数据库备份结束,当前时间:'$(date +%Y%m%d_%H%M%S) done -- 保留15天的备份记录 find ${backupdir} -type d -mtime +15 -exec rm -rf {} ; echo '>>>>>>>>>>数据库备份结束,当前时间:'$(date +%Y%m%d_%H%M%S)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)