数据库双机热备方案故障切换设置

2025-07-24 0 810 百度已收录

数据库突然崩了,业务停了好几分钟,老板急得直转圈?这时候要是有双机热备,故障切换能自动完成,可能用户都察觉不到异常。但好多朋友配置了双机热备,真出事了却切换失败,白忙活一场。今天小编就给大家讲讲数据库双机热备的故障切换设置,从准备到操作,再到常见问题,保证新手也能看明白,一起往下看吧!

先弄明白:数据库故障切换,到底是啥意思?

简单说,就是两台数据库服务器(主库和备库),主库正常工作时,备库实时同步数据;主库出问题(比如宕机、数据库服务停了),备库能自动或手动接管业务,变成新的主库。
关键是切换的时候,数据不能丢,业务不能断太久。网友小张就说过,他们公司之前没做好切换设置,主库挂了后手动切备库,光导数据就花了半小时,客户全跑了。所以啊,切换设置是双机热备的核心,可不能马虎。

准备工作:这些没弄好,切换肯定出问题

1. 数据库得先做好主从同步

数据库双机热备方案故障切换设置
这是基础中的基础,主库的数据得实时传到备库。比如 MySQL 的话,要配置 binlog 日志,备库通过 change master to 命令连接主库,确保 show slave status 能看到 IO 和 SQL 线程都是 Yes。
小编之前就遇到过,主从同步没配好,备库数据比主库少了半天的,切换过去后客户数据全乱了,还得回滚,特别麻烦。

2. 两台服务器得能互相通信

IP 地址设成一个网段(比如主库 192.168.1.10,备库 192.168.1.11),用 ping 命令测一下,能通才行。防火墙也得放通数据库端口(MySQL 默认 3306,SQL Server 默认 1433),不然备库连不上主库。
有个做电商的朋友,就因为防火墙没关,主库挂了备库也接不了,后来关了防火墙才好,你说这多耽误事。

故障切换设置步骤:分自动和手动,按需选

自动切换:适合没人值守的场景

以 MySQL 为例,用 MHA(Master High Availability)工具来实现自动切换,步骤大概是这样:

  1. 两台服务器都装 MHA 节点软件,再选一台当管理节点(可以是备库本身)。
  2. 配置 manager 的配置文件,指定主库、备库的 IP,还有数据库账号密码。
  3. 测试一下切换是否正常,用 masterha_check_ssh 检查 ssh 连通性,masterha_check_repl 检查复制状态。
  4. 启动 MHA 管理进程,masterha_manager –conf=/etc/mha/app1.cnf,让它后台运行着。

这样主库出问题时,MHA 会自动检测,然后把备库提升为主库,再通知应用程序连接新主库。小编建议新手先在测试环境练手,别直接在生产库上弄。

手动切换:适合对数据一致性要求极高的场景

有时候自动切换可能会有风险,手动切换更稳妥,步骤是这样:

  1. 先确认主库真的挂了,ping 不通或者数据库服务停了。
  2. 登录备库,停止同步进程(stop slave),然后执行 reset slave all,清除主从关系。
  3. 把备库设置为可写(有些数据库默认备库只读),比如 MySQL 执行 set global read_only=0。
  4. 通知应用程序,把数据库连接地址改成备库的 IP,这一步得快,不然业务还会报错。

有个做金融的朋友,他们就只用手动切换,每次切换前都要人工核对数据,虽然慢点但心里踏实。

切换设置里的坑:新手容易踩,小编替你试过了

  1. 应用程序连接地址没设对:好多人主库用 IP 连接,切换后还得改应用配置,特别麻烦。最好用虚拟 IP,切换时虚拟 IP 自动飘到备库,应用不用改配置。
  2. 数据同步延迟太大:主库挂的时候,备库数据还没同步完,切换后会丢数据。解决办法是尽量用实时同步,比如 MySQL 的 GTID 复制,减少延迟。
  3. 没测试过切换流程:配置完就不管了,真出事了手忙脚乱。小编建议每周手动测试一次,模拟主库故障,熟悉切换步骤。

自问自答:这些问题新手常问

  • 问:故障切换大概需要多久?用户能感觉到吗?
    答:自动切换快的话几秒钟,手动切换可能要几分钟。如果是电商网站,几秒钟用户可能没感觉,超过 10 秒就可能有人投诉了。
  • 问:切换后,原来的主库修好了,怎么变回主库?
    答:可以把修好的主库当成新的备库,重新配置主从同步,让它同步新主库的数据,这样又形成了双机热备。

小编的一点心得

数据库故障切换设置,核心就是 “快” 和 “准”—— 切换要快,数据要准。新手别害怕,先把主从同步弄扎实,再学切换工具,多练几次就熟了。
其实啊,不管自动还是手动切换,最重要的是提前制定好流程,谁来操作,步骤是什么,出问题找谁,都写下来贴在服务器旁边,真出事了才不会慌。小编见过太多因为没流程,切换时乱成一锅粥的,你可别犯这错。希望这些能帮到你,赶紧试试吧!

最新业务:世纪货币网
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

兔格号 SEO运维 数据库双机热备方案故障切换设置 https://www.tglzm.com/seo/wei-seo/4467.html

一个独行者,独揽万古

常见问题

相关文章

评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务