SHELL编程(二) 按天备份mysql数据库脚本

版权声明:本文为博主原创文章,未经博主允许禁止转载(http://blog.csdn.net/napoay) https://blog.csdn.net/napoay/article/details/80146514
#!/bin/bash
########################
#
# mysql auto backup
#
########################

BACKUPDIR=/opt/bee/shtest/data/` date +%Y-%m-%d `   #数据库备份路径
MYSQLDB=nowcoder                                    #要备份的数据库名
MYSQLUSR=root                                       #用户名

#must use root user run scripts
if
  [ $UID -ne 0 ];then
  echo "This script must use the root user"
  sleep 2
  exit 0
fi

if
 [ ! -d $BACKUPDIR ];then
 mkdir -p $BACKUPDIR
else
 echo "$BACKUPDIR exists ..."
fi

echo "Please input passwd:"
read -s  passwd
MYSQLPW=$passwd                  #密码
# use mysqldump backup mysql
echo -e  $MYSQLPW
/usr/bin/mysqldump -u$MYSQLUSR -p$passwd -d $MYSQLDB >$BACKUPDIR/nowcoder.sql

cd $BACKUPDIR; tar -czf  ${MYSQLDB}_db.tar.gz *.sql

#删除备份目录下以.sql结尾的文件并删除
find . -type f -name *.sql |xargs rm -rf

#备份成功打印提示
[ $? -eq 0 ] && echo "This `date +%Y-%m-%d` mysql backup success"

cd $BACKUPDIR ; find . -type d -mtime +30 | xargs rm -rf 

猜你喜欢

转载自blog.csdn.net/napoay/article/details/80146514