基於dockerMysql的shell備份腳本
阿新 • • 發佈:2018-09-08
database gzip tab xxx ret docker for dock day #!/bin/bash
#For Backup Mysql
#Date:XXX
DOCKERNAME="dockernames"
USER="xx"
PASS="xx"
MYSQL_BAKDIR="/data/mysqlback/"
MYSQL_DIR="/data/mysqlback/
function CMD()
{
docker exec ${DOCKERNAME} mysqlshow -u${USER} -p${PASS}
return 0
} |xargs rm -rf
return 0
} $(date +%F).sql.gz ];then
echo -e "
else
echo -e "
fi
done
DEL
#For Backup Mysql
#Date:XXX
DOCKERNAME="dockernames"
USER="xx"
PASS="xx"
MYSQL_BAKDIR="/data/mysqlback/"
MYSQL_DIR="/data/mysqlback/
date +%Y%m%d
"function CMD()
{
docker exec ${DOCKERNAME} mysqlshow -u${USER} -p${PASS}
return 0
}
function DEL()
{
find ${MYSQL_BAKDIR} -type d -name date +"%Y%m%d" -d "-7 days"
return 0
}
function DUMP()
{
docker exec ${DOCKERNAME} mysqldump -u${USER} -p${PASS} ${1}
echo ${1}
return 0
}
if [ ! -d ${MYSQL_DIR} ];then
mkdir ${MYSQL_DIR} -p
fi
for i in CMD
do
echo $i|grep -qnviE ‘-|+|||schema|Databases‘ && DUMP ${i}|gzip > ${MYSQLDIR}/${i}$(date +%F).sql.gz && if [ -f ${MYSQLDIR}/${i}
echo -e "
date
\ndump success" >> /mysqlback.logelse
echo -e "
date
\ndump failed" >> /mysqlback.logfi
done
DEL
基於dockerMysql的shell備份腳本