#!/bin/bash
MYSQL_BACKUP=date +%Y%m%d
MYSQL_LOG_BIN=ls /var/lib/mysql/mysql-bin.[0-9]* | head -n 1 | sort -rg | head -n 1
num=
1
i
f
[
!
−
d
/
o
p
t
/
1 if [ ! -d /opt/
1if[!−d/opt/MYSQL_BACKUP ];then
mkdir /opt/$MYSQL_BACKUP -p
fi
#全备
mysql_all(){
mysqldump -uroot --flush-logs --master-data --all-databases > /opt/
M
Y
S
Q
L
B
A
C
K
U
P
/
MYSQL_BACKUP/
MYSQLBACKUP/{MYSQL_BACKUP}.sql
}
#增备
mysql_increment(){
mysqldump -uroot --flush-logs
cp
M
Y
S
Q
L
L
O
G
B
I
N
/
o
p
t
/
MYSQL_LOG_BIN /opt/
MYSQLLOGBIN/opt/MYSQL_BACKUP
}
case $num in
1)
mysql_all
;;
2)
mysql_increment
;;
*)
exit
esac