备份脚本

[root@iZ25kgnqio7Z mysqlback]# more mysqlbackup.sh
#!/bin/bash

databases=('oms3' 'keyword')

basepath='/alidata/mysqlback/'
user='mysql'
passwd='xxxxx'

if [ ! -d "$basepath" ]; then
mkdir -p "$basepath"
fi

for db in ${databases[*]}
do
/bin/nice -n 19 /usr/local/mysql/bin/mysqldump -u$user -p$passwd --log-error=$basepath$db-$(date +%Y%m%d).log --database $db > $basepath$db-$(date +%Y%m%d).sql

/bin/nice -n 19 tar zPcf $basepath$db-$(date +%Y%m%d).sql.tar.gz $basepath$db-$(date +%Y%m%d).sql

find $basepath -mtime +7 -name "*.sql.tar.gz" -exec rm -rf {} \;
done
备份后的结果是:

-rw-r--r-- 1 msyql msyql 0 Apr 9 00:15 oms3-20170409.log
-rw-r--r-- 1 msyql msyql 3380316532 Apr 9 00:34 oms3-20170409.sql.tar.gz
-rw-r--r-- 1 msyql msyql 0 Apr 9 00:34 keyword-20170409.log
-rw-r--r-- 1 msyql msyql 251514712 Apr 9 00:39 keyword-20170409.sql.tar.gz
-rw-r--r-- 1 msyql msyql 0 Apr 10 00:15 oms3-20170410.log
-rw-r--r-- 1 msyql msyql 3387944108 Apr 10 00:35 oms3-20170410.sql.tar.gz
-rw-r--r-- 1 msyql msyql 0 Apr 10 00:35 keyword-20170410.log
-rw-r--r-- 1 msyql msyql 251643052 Apr 10 00:40 keyword-20170410.sql.tar.gz
-rw-r--r-- 1 msyql msyql 0 Apr 11 00:15 oms3-20170411.log
-rw-r--r-- 1 msyql msyql 3396607153 Apr 11 00:34 oms3-20170411.sql.tar.gz
-rw-r--r-- 1 msyql msyql 0 Apr 11 00:34 keyword-20170411.log
-rw-r--r-- 1 msyql msyql 251744735 Apr 11 00:39 keyword-20170411.sql.tar.gz
可以看到log日志的大小都是0,MySQL的规则是假如有问题才会写这个文件,否则就创建一个空的,这个和ORACLE还是有很大不同的。