1、数据库备份脚本
#!/bin/bash
#PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
MYUSER=backup
MYSQL_PWD=mysql
MYSQL_PAS=123456
MYSQL_URL=127.0.0.1
MYCMD="mysql -u$MYUSER -p$MYSQL_PAS -h $MYSQL_URL"
MYDUMP="mysqldump -u$MYUSER -p$MYSQL_PAS -h $MYSQL_URL"
Date=`date +%F`
BACKDIR=/data/database/${Date}
[ -d $BACKDIR ] || mkdir -p $BACKDIR
for dbname in `$MYCMD -e "show databases;"|grep -vE 'Database|information_schema|mysql|performance_schema|sys|test' `
do
mkdir $BACKDIR/${dbname}_$(date +%F) -p
for table in `$MYCMD -e "show tables from $dbname;"|sed '1d'`
do
$MYDUMP $dbname $table|gzip >$BACKDIR/${dbname}_$(date +%F)/${dbname}_${table}.sql.gz
done
done
二、加密
上面的脚本是已经将密码和账号还有链接地址已经写入到上去了。所以这样很危险。
减少权限:chmod 700 backup.sh
加密:gzexe backup.sh
这回我们查看脚本的时候就已经乱码了,但是脚本还是可以正常执行的。
解密命令:gzexe -d backup.sh
三、下面是对打包备份的数据库文件进行打包并设置密码
压缩包加密参考链接:
有问题请加博主微信进行沟通!
全部评论