当前位置: 首页 > news >正文

MySQL高可用架构实战:备份恢复、主从复制、读写分离与MHA

MySQL高可用架构实战:备份恢复、主从复制、读写分离与MHA

一、MySQL备份与恢复

1.1 备份分类
  • 物理备份:直接复制数据库文件(冷备、热备、温备)。
  • 逻辑备份:导出SQL语句(如mysqldump)。
  • 增量备份:基于二进制日志。
1.2 冷备份(物理冷备)
systemctl stop mysqldtarczf /backup/mysql-backup-$(date+%F).tar.gz /var/lib/mysql systemctl start mysqld# 恢复时停止服务,解压覆盖,修改权限后启动
1.3 逻辑备份(mysqldump)
# 备份单个数据库mysqldump-uroot-pschool>/backup/school.sql# 备份多个数据库mysqldump-uroot-p--databasesschool mysql>/backup/school_mysql.sql# 备份所有数据库mysqldump-uroot-p--all-databases>/backup/all.sql# 备份指定表mysqldump-uroot-pschool student>/backup/student.sql
  • 恢复mysql -u root -p school < /backup/school.sql或在mysql内source /backup/student.sql
1.4 增量备份(基于binlog)
  1. 启用binlog:log-bin=mysql-bin
  2. 完整备份后刷新日志:mysqladmin flush-logs
  3. 后续所有变更记录在新binlog中。
  4. 恢复时:先恢复完整备份,再使用mysqlbinlog重放增量binlog。
mysqlbinlog mysql-bin.000003|mysql-uroot-p

二、主从复制

2.1 核心原理
  • binlog:主库记录所有变更。
  • IO线程:从库请求并接收binlog,写入relay log。
  • SQL线程:从库重放relay log。
2.2 配置步骤(基于5.7)

主库

[mysqld] server-id=1 log-bin=master-bin log-slave-updates

创建复制用户:

GRANTREPLICATIONSLAVEON*.*TO'myslave'@'192.168.%'IDENTIFIEDBY'123456';FLUSHPRIVILEGES;SHOWMASTERSTATUS;-- 记录File和Position

从库

[mysqld] server-id=2 relay-log=relay-log-bin relay-log-index=slave-relay-bin.index

执行:

CHANGE MASTERTOMASTER_HOST='主库IP',MASTER_USER='myslave',MASTER_PASSWORD='123456',MASTER_LOG_FILE='master-bin.000001',MASTER_LOG_POS=604;STARTSLAVE;SHOWSLAVESTATUS\G;-- 查看两个YES

三、读写分离(Amoeba中间件)

3.1 原理
  • 应用连接Amoeba代理(端口8066)。
  • Amoeba解析SQL,写操作(INSERT/UPDATE/DELETE)发往主库池,读操作(SELECT)发往从库池,并轮询负载均衡。
3.2 配置要点
  • 安装JDK,解压Amoeba。
  • 修改conf/amoeba.xml:设置客户端认证账号、defaultPool、writePool、readPool。
  • 修改conf/dbServers.xml:定义后端MySQL节点(主库和从库地址、用户名密码、库名)。
  • 启动Amoeba:/usr/local/amoeba/bin/amoeba start
  • 客户端连接Amoeba:mysql -u amoeba -p123456 -h amoeba_ip -P 8066

四、MHA高可用

4.1 MHA概述
  • 解决MySQL主从复制中主库单点故障,实现自动故障转移(0-30秒)。
  • 组成:Manager(管理节点)+ Node(数据节点)。
  • 原理:监控主库,宕机后从候选从库中选举新主库,并让其他从库指向新主库。
4.2 实验环境(一主两从)
主机名IP角色
mysql-master192.168.108.131主库,安装node
mysql-slave01192.168.108.132从库(候选主),安装node
mysql-slave02192.168.108.133从库,安装node
mha192.168.108.130管理节点,安装node+manager
4.3 配置步骤
  1. 配置主从复制(如上)。
  2. 所有节点安装MHA node,manager节点安装MHA manager。
  3. 配置SSH免密登录(manager到所有节点,所有节点之间互相免密)。
  4. 准备虚拟IP脚本(master_ip_failover),设置VIP如192.168.108.200
  5. 创建MHA配置文件/etc/masterha/app1.cnf,指定用户、密码、复制用户、日志路径、VIP脚本等。
  6. 检查SSH和复制状态:
masterha_check_ssh--conf=/etc/masterha/app1.cnf masterha_check_repl--conf=/etc/masterha/app1.cnf
  1. 手动在主库绑定VIP:ifconfig ens33:1 192.168.108.200/24
  2. 启动MHA:
nohupmasterha_manager--conf=/etc/masterha/app1.cnf\--remove_dead_master_conf--ignore_last_failover\</dev/null>/var/log/masterha/app1/manager.log2>&1&
4.4 故障模拟与恢复
  • 停止主库MySQL:systemctl stop mysql
  • MHA自动切换,VIP漂移到候选从库(slave01),其他从库重新指向新主库。
  • 原主库恢复后,重新配置为从库指向新主库。

五、补充:MySQL 5.7源码编译安装

  • 安装依赖:gcc, cmake, ncurses-devel, bison等。
  • 下载MySQL源码和boost库。
  • cmake指定安装路径、字符集、存储引擎、boost路径等。
  • make && make install
  • 初始化数据库:mysqld --initialize-insecure --user=mysql
  • 配置systemd服务文件,设置环境变量。
http://www.jsqmd.com/news/985768/

相关文章:

  • Spring AI 1.x 系列【56】用大模型评判大模型:递归顾问实现自动化评估方案
  • MySQL的学习之路:存储引擎、数据类型与表设计规范
  • iOS 27的11个新变化,你觉得值得更新吗?
  • 墨香情手游:以水墨绘江湖,用情义写春秋
  • 想系统学习AI可以考哪些证书,2026人工智能证书路线图
  • java后端面试题(Redis篇)
  • 【计算机毕业设计案例】基于Android的全民健身App设计与实现(程序+文档+讲解+定制)
  • 石景山区2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 三大殿
  • 金华市2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 干豆腐啊
  • 为机器人原生,时空一体世界动作模型问世!复旦系开辟具身AGI最优解
  • 解决jenkins(本机部署或容器部署)安全机制【CSP】问题
  • 2026全球星光荣耀盛典启动 面向全球华人创作者免费征稿
  • SolidWorks_基于草图的实体特征7_筋特征构建
  • LaTeX 绘图单位避坑指南:为什么你的 Draw.io / Matplotlib 导入后字体总是不对?
  • 柳州泰遇尚养生馆:探寻龙城身心灵放松的静谧之所
  • 酒泉市2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 干豆腐啊
  • QT初始(1)
  • 2026年效果最好的GEO服务商五强权威盘点:从技术到服务的全景对比 · 第 191 期
  • 芜湖市2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 三大殿
  • 从零开始 - 在GitHub创建项目并上传代码
  • 10万QPS下,Redis缓存如何避免雪崩?
  • 海狮企鹅萌宠表演亮点与短板揭秘!动物技能出色,场馆环境待提
  • 多件装组合SKU图的批量生产效率分析:从PS手工到AI自动化的工作流改造
  • 2026武汉网站建设、网站设计、小程序制作公司推荐榜单 - 奔跑123
  • 西双版纳傣族自治州2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 三大殿
  • 第1章 认识鸿蒙元服务(零基础入门)
  • 辽源市2026年本地上门黄金回收门店指南 彩金+铂金+金条+白银回收门店联系方式推荐 - 干豆腐啊
  • 2026年6月变频器厂家TOP5综合评测:技术、选型与标杆企业全解析
  • N8N 工作流使用中转API 教程
  • 计算机小程序毕设实战-基于springboot+微信小程序的演唱会售票系统小程序【完整源码+LW+部署说明+演示视频,全bao一条龙等】