#!/bin/bash
user=root
pass=Admin@2022!
file_date=`date +"%Y%m%d%H%M"` #获取年月日时分参数
backfile=/root/mysql_backup/${file_date} #备份路径
[ ! -d $backfile ] && mkdir -p $backfile #判断备份路径是否存在
cmd="mysql -u$user -p$pass" #登录数据库
dump="mysqldump -u$user -p$pass " #备份参数
dblist=`$cmd -e "show databases;" 2>/dev/null |sed 1d |egrep -v "_schema|mysql"` #获取库名列表
echo "需要备份的数据列表:"
echo $dblist
echo "开始备份:"
for db_name in $dblist #for循环备份库列表
do
printf '正在备份数据库:%s' ${db_name}
$dump $db_name 2>/dev/null |gzip >${backfile}/${db_name}.sql.gz #库名+时间备份打包至指定路径下
printf ',备份完成\n'
done
echo "全部完成!!!"
MySQL分时分库备份
于 2022-07-19 15:42:45 首次发布