- 论坛徽章:
- 0
|
crontab -l
#ident "@(#)root 1.20 01/11/06 SMI"
#
# The root crontab should be used to perform accounting data collection.
#
# The rtc command is run to adjust the real time clock if and when
# daylight savings time changes.
#
10 3 * * * /usr/sbin/logadm
15 3 * * 0 /usr/lib/fs/nfs/nfsfind
1 2 * * * [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c >; /dev/null 2>;&1
30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
0 2 * * * /opt/backup/backupmysql.sh
#10 3 * * * /usr/lib/krb5/kprop_script ___slave_kdcs___
ls -l /opt/backup
total 8
-rwxr--r-- 1 ftpuser ftpgroup 1876 Dec 9 17:33 backupmysql.sh
drwxr-xr-x 2 root other 512 Dec 10 09:40 mysql
drwxr-xr-x 2 root other 512 Dec 9 17:27 www
vi /opt/backup/backupmysql.sh
#!/bin/bash
DBName=hzkp
DBUser=root
DBPasswd=helpmecuer
BackupPath=/opt/backup/mysql/
LogFile=/opt/backup/mysql/db.log
DBPath=/usr/local/mysql/data/
BackupMethod=mysqldump
NewFile="$BackupPath"db$(date +%y%m%d).tgz
DumpFile="$BackupPath"db$(date +%y%m%d)
OldFile="$BackupPath"db$(date +%y%m%d --date='5 days ago').tgz
echo "-------------------------------------------" >;>; $LogFile
echo $(date +"%y-%m-%d %H:%M:%S" >;>; $LogFile
echo "--------------------------" >;>; $LogFile
#Delete Old File
if [ -f $OldFile ]
then
rm -f $OldFile >;>; $LogFile 2>;&1
echo "[$OldFile]Delete Old File Success!" >;>; $LogFile
else
echo "[$OldFile]No Old Backup File!" >;>; $LogFile
fi
if [ -f $NewFile ]
then
echo "[$NewFile]The Backup File is exists,Can't Backup!" >;>; $LogFile
else
case $BackupMethod in
mysqldump)
if [ -z $DBPasswd ]
then
mysqldump -u $DBUser --opt $DBName >; $DumpFile
else
mysqldump -u $DBUser -p$DBPasswd --opt $DBName >; $DumpFile
fi
gtar cvf $NewFile $DumpFile >;>; $LogFile 2>;&1
echo "[$NewFile]Backup Success!" >;>; $LogFile
rm -rf $DumpFile
;;
mysqlhotcopy)
rm -rf $DumpFile
mkdir $DumpFile
if [ -z $DBPasswd ]
then
mysqlhotcopy -u $DBUser $DBName $DumpFile >;>; $LogFile 2>;&1
else
mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >;>;$LogFile 2>;&1
fi
gtar cvf $NewFile $DumpFile >;>; $LogFile 2>;&1
echo "[$NewFile]Backup Success!" >;>; $LogFile
rm -rf $DumpFile
;;
*)
/etc/rc3.d/K90mysql stop >;/dev/null 2>;&1
gtar cvf $NewFile $DBPath$DBName >;>; $LogFile 2>;&1
/etc/rc3.d/S90mysql start >;/dev/null 2>;&1
echo "[$NewFile]Backup Success!" >;>; $LogFile
;;
esac
fi
echo "-------------------------------------------" >;>; $LogFile
手动执行/opt/backup/backupmysql.sh能达到效果。
请指点。root用户操作。 |
|