一、备份文件,databak.sh
[root@tec ~]#vi datebak.sh
#!/bin/bash
time=`date +%Y%m%d%H%M%S`
backupdir=/databak
backroot=/datesec/tomcat6.0_sys/webapps(路径名)
lantofile=/lantosec
binlogfile=/var/lib/mysql
username="root"
password="Admin123"
#!创建备份目录
mkdir /databak
cd $backupdir
#!sysconfig库全量备份(表结构、数据、视图、存储过程、定时任务)
#!sys库备份(表结构、视图、存储过程、定时任务)
#mysqldump -u$username -p$password --single-transaction sys --no-data --routines --events --master-data=2 | gzip >sys_table_$time.sql.gz;
#!sys库备份表名为【kp_】前缀的(表结构、数据)
#mysqldump -u$username -p$password --single-transaction sys $(mysql -u$username -p$password -Drptsys -Bse "SHOW TABLES LIKE 'kp_%'") --master-data=2 | gzip >sys_kp_$time.sql.gz;
#!保留5天内最新的数据文件
#!find $backupdir -mtime +5 -name "*.sql.gz" -exec rm -rf {} \;
cd $backroot
#!压缩ROOT文件夹
#! tar zcvf ROOT.tar.gz ROOT;
tar cfz $backupdir/ROOT_$time.tar.gz ROOT
#!移动ROOT压缩文件到databak目录
#! mv ROOT.tar.gz $backupdir;
cd $lantofile
#!压缩lantofiles文件夹
#! tar zcvf files.tar.gz files;
tar cfz $backupdir/files_$time.tar.gz files
#!移动lantofiles压缩文件到databak目录
#! mv lantofiles.tar.gz $backupdir;
#!保留5天内最新的数据文件
#!find $backupdir -mtime +5 -name "*.tar.gz" -exec rm -rf {} \;
cd $binlogfile
#!压缩所有binlog文件
#!gzip -c mysql-bin.* >mysql-bin.binlog.gz;
tar cfz $backupdir/mysql-bin_$time.binlog.gz mysql-bin.*
#!移动binlog压缩文件到databak目录
#! mv mysql-bin.binlog.gz $backupdir;
#!保留5天内最新的数据文件
#!find $backupdir -mtime +5 -name "*.binlog.gz" -exec rm -rf {} \;
find $backupdir -mtime +5 -name "*.gz" -exec rm -rf {} \;
二、修改mysql配置文件
①查找文件my.cnffind / -name my.cnf
[root@tec ~]#find / -name my.cnf
②编辑my.cnf文件
[root@tec ~]# vi /etc/my.cnf
在[mysqld]节点下配置:
log-bin=mysql-bin
max_binlog_size=1G
③重启mysql服务
[root@tec ~]#service mysql restart
二、配置定时任务
[root@tec ~]#vi /etc/crontab
#Sunday 0:00 make Full Log 每周星期日0点执行全量备份
0 0 * * sun /var/lib/mysql/databak.sh >/dev/null 2>&1
三、执行crontab任务
[root@tec ~]#crontab -e
四、查看定时任务
crontab -l