#!/bin/bash
# MySQL配置信息
DB_USER="root"
DB_PASSWORD="123456"
BACKUP_DIR="/home/mysql/backup"
BINLOG_DIR="/var/log/mysql"
BINLOG_FILE_PREFIX="binlog"
# 获取最新的二进制日志文件名和位置
LAST_BINLOG_FILE=$(mysql -u$DB_USER -p$DB_PASSWORD -e "SHOW MASTER STATUS\G" | grep "File" | awk '{print$2}')
LAST_BINLOG_POS=$(mysql -u$DB_USER -p$DB_PASSWORD -e "SHOW MASTER STATUS\G" | grep "Position" | awk '{print$2}')
# 复制最新的二进制日志文件到备份目录
cp ${BINLOG_DIR}/${LAST_BINLOG_FILE} ${BACKUP_DIR}/${LAST_BINLOG_FILE}.backup
# 备份自上次全备份以来的所有二进制日志
mysqlbinlog --start-position=$LAST_BINLOG_POS${BINLOG_DIR}/${LAST_BINLOG_FILE} >${BACKUP_DIR}/incremental-backup-$(date +%Y%m%d%H%M%S).sql