<强> 1,mysqlmysqllogbin 强>/etc/my . cnf中所做
, (mysqld)
log-bin="/home/mysql/logbin。日志”
binlog-format=行
log-bin-index="/home/mysql/logindex”
binlog_cache_size=32 m
max_binlog_cache_size=512
max_binlog_size=512 mysql/home/mysqlmysql
<强> 2 强>
/home/mysql/
mkdir - p/home/mysql/备份/每日
cd/home/mysql binlogbak.sh第六
# !/bin/bash
export.UTF-8
BakDir=/home/mysql/备份/每日
BinDir=/home/mysql
日志文件=/home/mysql/备份/binlog.log
BinFile=/home/mysql/logindex。指数
mysqladmin -uroot -proot123flush-logs
# mysql-bin。00000 *
Counter=皐c - l $ BinFile | awk的{打印1美元}'
NextNum=0
#美元,美元NextNum
文件在“猫BinFile美元”
做,,,基?' basename美元文件'
,,,# basenamemysql-bin.00000 *。/mysql-bin.000005./
,,,NextNum=expr NextNum + 1美元的
,,,如果[$ NextNum eq $计数器]
,,,然后
,,,,,,,echo $基地跳过!在比;美元的日志文件
,,,其他
,,,,,,,dest=$ BakDir/$基地
,,,,,,,如果(测试- e dest美元)
,,,,,,,#测试-eexist ! $日志文件
,,,,,,,然后
,,,,,,,,,,,echo $基地存在!在比;美元的日志文件
,,,,,,,其他
,,,,,,,,,,,cp BinDir美元/基地BakDir美元
,,,,,,,,,,,美元,回波基地复制比美元的在日志文件
,,,,,,,fi
,,,fi
完成回声“日期+“Y % % m H % d %: % m: % S”“Bakup succ !在比;美元的日志文件
binlogbak。sh
chmod + x/home/mysql/binlogbak。sh
<强> 3 强>
vi databak.sh
# !/bin/bash
export.UTF-8
BakDir=/home/mysql/备份日志文件
=/home/mysql/备份/bak。日志
日期=叭掌? % Y % m % d”
开始='日期+“Y % % m H % d %: % m: % S”的
cd $ BakDir
DumpFile=$ Date.sql
GZDumpFile=$ Date.sql。tgz
, mysqldump -uroot -proot123——所有数据库flush-logs delete-master-logs——单独的事务在美元DumpFile
焦油-czvf GZDumpFile DumpFile美元DumpFile美元rm
,
=$ (ls - l *。tgz | wc - l)
如果[美元计算通用电气5]
然后
文件=$ (ls - l *。tgz | awk的{打印9美元}| awk NR==1)
rm - f $文件
fi
#
,
最后='日期+“Y % % m H % d %: % m: % S”的
回声:美元开始:去年美元GZDumpFile succ祝辞祝辞美元的日志文件
cd $ BakDir/每日rm - f *
databak。sh
chmod + x/home/mysql/databak。sh
<强> 4 强>
crontab - e
# 3
0 3 * * 0/home/mysql/databak。sh在/dev/null 2祝辞,1
# 3
0 3 * * 1 - 6/home/mysql/binlogbak。sh在/dev/null 2祝辞,1
crontab/etc/crontab
crontab - l