#!/bin/bash # ============================================================================ # MySQL 8.0.24 备份恢复工具 - 配置文件 # ============================================================================ # 作者: AI Assistant # 版本: 1.0.0 # 说明: 此文件包含所有备份恢复脚本的公共配置 # ============================================================================ # ---------------------------------------------------------------------------- # MySQL 连接配置 # ---------------------------------------------------------------------------- # MySQL 服务器地址 MYSQL_HOST="localhost" # MySQL 端口 MYSQL_PORT="3306" # MySQL 用户名 (需要有备份权限: RELOAD, LOCK TABLES, REPLICATION CLIENT) MYSQL_USER="root" # MySQL 密码 (生产环境建议使用 mysql_config_editor 或环境变量) MYSQL_PASSWORD="" # MySQL 数据目录 (用于物理备份) MYSQL_DATA_DIR="/var/lib/mysql" # ---------------------------------------------------------------------------- # 备份存储配置 # ---------------------------------------------------------------------------- # 备份根目录 BACKUP_ROOT_DIR="/data/mysql_backup" # 全量备份目录 FULL_BACKUP_DIR="${BACKUP_ROOT_DIR}/full" # 增量备份目录 INCREMENTAL_BACKUP_DIR="${BACKUP_ROOT_DIR}/incremental" # 恢复临时目录 RESTORE_TMP_DIR="${BACKUP_ROOT_DIR}/restore_tmp" # 日志目录 LOG_DIR="${BACKUP_ROOT_DIR}/logs" # ---------------------------------------------------------------------------- # 备份保留策略 # ---------------------------------------------------------------------------- # 全量备份保留天数 FULL_BACKUP_RETENTION_DAYS=7 # 增量备份保留天数 INCREMENTAL_BACKUP_RETENTION_DAYS=3 # ---------------------------------------------------------------------------- # mysqlbackup/xtrabackup 工具配置 (使用 MySQL Enterprise Backup 或 Percona XtraBackup) # 本脚本使用 mysqldump 进行逻辑备份,同时支持基于 binlog 的增量备份 # ---------------------------------------------------------------------------- # mysqldump 路径 MYSQLDUMP_PATH="/usr/bin/mysqldump" # mysql 客户端路径 MYSQL_PATH="/usr/bin/mysql" # mysqlbinlog 路径 MYSQLBINLOG_PATH="/usr/bin/mysqlbinlog" # ---------------------------------------------------------------------------- # 通知配置 (可选) # ---------------------------------------------------------------------------- # 是否启用邮件通知 ENABLE_EMAIL_NOTIFICATION=false # 通知邮箱地址 NOTIFICATION_EMAIL="admin@example.com" # ---------------------------------------------------------------------------- # 并行处理配置 # ---------------------------------------------------------------------------- # 压缩线程数 COMPRESS_THREADS=4 # 备份时使用的压缩工具 (gzip, pigz, lz4) COMPRESS_TOOL="gzip" # ---------------------------------------------------------------------------- # 其他配置 # ---------------------------------------------------------------------------- # 备份文件前缀 BACKUP_PREFIX="mysql_backup" # 时间戳格式 TIMESTAMP_FORMAT="%Y%m%d_%H%M%S" # 是否启用详细日志 VERBOSE=true # ---------------------------------------------------------------------------- # 要备份的数据库列表 (留空表示备份所有数据库) # 格式: "db1 db2 db3" 或留空 "" # ---------------------------------------------------------------------------- DATABASES_TO_BACKUP="" # 要排除的数据库 (系统数据库默认排除) EXCLUDE_DATABASES="information_schema performance_schema sys"