网站首页 > 技术教程 正文
MySQL AB解决了数据备份的问题,但是当A由于某些原因宕机后,WEB服务器就没有办法在往数据库写或者读写了。线上业务中断了,完了,出事故了。这该怎么办呢?
本节课主要给大家讲解如何处理因为MySQL主服务器宕机造成的业务中断问题,保障MySQL业务高可用。
一、实验拓扑图
二、架构原理
1、MySQL互为主备,保障多台MySQL的数据强一致性。
2、VIP漂移,任何一台宕机都不影响数据读写
3、宕机服务器修复,自动同步故障间的缺失数据
三、实验准备
- 机器三台并设置好IP地址
- 关闭防火墙、selinux
- 时间同步
- manage01部署lamp
- node1、node2安装mysql
- 知识储备点:MySQL AB复制
四、manage01-lamp
[root@manage01 ~]# yum -y install httpd php php-mysql
[root@manage01 ~]# systemctl start httpd
[root@manage01 ~]# systemctl start php-fpm
[root@manage01 ~]# vim /var/www/html/phpinfo.php
<?php phpinfo(); ?>
五、node1、node2互为主备
1、确认binlog开启
2、设置server-id
3、创建同步mysql用户
4、设置同步
#以node2为例
#创建用户
mysql> create user sko2 identified by "123456";
Query OK, 0 rows affected (0.00 sec)
mysql> grant replication slave on *.* to sko2;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
#开始同步
#同步前 主服务器生成一个新binlog开始同步,防止之前的binlog中语句无法执行
mysql> stop slave;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> change master to
-> master_host='192.168.98.202',
-> master_user='sko',
-> master_password='98989',
-> master_log_file='binlog.000002',
-> master_log_pos=xxx;
Query OK, 0 rows affected, 3 warnings (0.01 sec)
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
六、测试
1、模拟故障,将配有VIP的mysql宕机,手动回收VIP并配给另外一个运行的mysql服务器,查看业务是否正常。
2、恢复宕机mysql,查看宕机过程中的产生的数据是否能够从另外一个运行的mysql中恢复回来。
猜你喜欢
- 2025-06-10 基于 Linux 搭建高可用 Keepalived+HAProxy 双机热备负载均衡集群
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)