mysql数据库执行全量备份影响业务_利用xtrabackup实现无锁备份

会,但不是必然------取决于备份方式;mysqldump加全局读锁会导致写入阻塞,xtrabackup物理备份不锁InnoDB表,仅毫秒级FTWRL获取位点,不影响业务。全量备份期间业务会卡顿甚至超时吗?会,但不是必然------取决于备份方式。直接用 mysqldump 加全局读锁(FLUSH TABLES WITH READ LOCK)会导致写入阻塞,高并发下接口响应明显变慢,甚至触发超时;而 xtrabackup 的物理备份在大多数情况下不锁表,InnoDB 表全程可读可写。关键区别在于:xtrabackup 通过拷贝 InnoDB 的数据文件 + redo log 实现一致性,它依赖的是 InnoDB 自身的崩溃恢复机制,而非 SQL 层锁。MyISAM 表仍会被锁(但现代业务基本不用 MyISAM)备份开始时会有极短的 FTWRL(毫秒级),仅用于获取 binlog 位置和 LSN,不影响业务感知如果备份过程中 redo log 生成过快(比如大事务持续提交),可能拉长 backup_log_copy 阶段,间接增加备份时间,但不阻塞 DMLxtrabackup 备份命令里哪些参数不能错?三个核心参数一旦配错,轻则备份失败,重则恢复出错或丢失一致性:--backup 必须显式指定,漏掉就变成 prepare 或 copy-back 操作--target-dir 路径必须为空目录,否则报错 already exists;且需保证磁盘空间 ≥ 数据目录大小 × 1.2(含 redo 日志增量)--user 和 --password 要有 RELOAD, PROCESS, LOCK TABLES, REPLICATION CLIENT 权限,缺 REPLICATION CLIENT 会导致无法获取 binlog 位点,影响后续搭建从库示例正确命令:xtrabackup --backup --user=backup_user --password='xxx' --target-dir=/data/backup/20240520/备份后不执行 --prepare 就恢复,会发生什么?直接 copy-back 会启动失败,报错类似 InnoDB: Database page corruption on disk 或 innodb_page_size mismatch。 稿定AI 拥有线稿上色优化、图片重绘、人物姿势检测、涂鸦完善等功能

相关推荐
m0_6174939414 小时前
Python OpenCV 透视变换(Perspective Transform)详解与实战
开发语言·python·opencv
小李不困还能学14 小时前
PyCharm下载安装与配置教程
ide·python·pycharm
博观而约取厚积而薄发14 小时前
Pytest 从入门到精通,一篇就够(超详细实战教程)
python·测试工具·单元测试·自动化·pytest
AI-好学者15 小时前
阶段二-Cypher查询语言详解
数据库·rag·graphrag
imzed15 小时前
使用 Playwright + Pytest 构建 Web UI 自动化测试框架
python·自动化·pytest
普通网友15 小时前
pytest一些常见的插件
开发语言·python·pytest
龙仔72515 小时前
SQL Server 批量多库只读账号一键脚本(带逐行注释完整脚本 + 分段逐句详细解释)
服务器·数据库·sql·sqlserver·dba
时空系15 小时前
Python 高性能高压缩打包器 —— 基于 JianPy 语义分析引擎
python
cndes15 小时前
给Miniconda换源,让包下载更迅速
开发语言·python