数据库备份脚本+加密

1653人浏览 / 0人评论

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

 

三、下面是对打包备份的数据库文件进行打包并设置密码

压缩包加密参考链接:

http://106.12.100.206/article/212

全部评论