From 9629054566f6116fc019c5e47e44eed03bee54a3 Mon Sep 17 00:00:00 2001 From: k Date: Mon, 22 Dec 2025 15:57:55 +0000 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20config.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config.sh | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 config.sh diff --git a/config.sh b/config.sh new file mode 100644 index 0000000..adf003d --- /dev/null +++ b/config.sh @@ -0,0 +1,105 @@ +#!/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"