Master High Availability 设置配置
发布时间:2022-07-08 13:06:05 所属栏目:MySql教程 来源:互联网
导读:MHA(Master High Availability)目前在 MySQL 高可用方面是一个相对成熟的解决方案, 是一套优秀的作为 MySQL 高可用性环境下故障切换和主从提升的高可用软件。在 MySQL 故障切换过程中,MHA 能做到在 0~30 秒之内自动完成数据库的故障切换操 作,并且在进行故障
MHA(Master High Availability)目前在 MySQL 高可用方面是一个相对成熟的解决方案, 是一套优秀的作为 MySQL 高可用性环境下故障切换和主从提升的高可用软件。在 MySQL 故障切换过程中,MHA 能做到在 0~30 秒之内自动完成数据库的故障切换操 作,并且在进行故障切换的过程中,MHA 能在最大程度上保证数据的一致性,以达 到真正意义上的高可用。 该软件由两部分组成:MHA Manager(管理节点)和 MHA Node(数据节点)。MHA Manager 可以单独部署在一台独立的机器上管理多个 master-slave 集群,也可以部署在一台 slave 节 点上。 MHA Node 运行在每台 MySQL 服务器上,MHA Manager 会定时探测集群中的 master 节点,当 master 出现故障时,它可以自动将最新数据的 slave 提升为新的 master,然后将 所有其他的 slave 重新指向新的 master。整个故障转移过程对应用程序完全透明。MHA 可 以 与半同步复制结合起来,目前 MHA 主要支持一主多从的架构,要搭建 MHA,要求一个复制集群 中必须最少有三台数据库服务器,一主二从,即一台充当 master,一台充当备用 master,另 Master 端配置: yum install perl-DBD-mysql -y rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm 构建免密登陆 ssh-keygen ##生成密钥 ssh-copy-id 172.25.40.2 ##给另外两台 mysql 主机分发,这样可以免密连接 ssh-copy-id 172.25.40.3 mysql 主配置文件(/etc/my.cnf)配置 [mysqlnd] server-id=1 ##数据库的唯一标示,不能重复 log-bin=mysql-bin ##二进制记录文件名为 mysql-bin binlog-do-db=test ##同的库为 test binlog-ignore-db=mysql ##不同步 mysql gtid-mode=ON ##打开 gtid 模式 enforce-gtid-consistency=ON##强制使用 gtid 模式 slave-parallel-type=LOGICAL_CLOCK ##打开多线程模式 slave-parallel-workers=16 ##开启 16 个线程 relay_log_info_repository=TABLE ##以表格形式存放 relay-log 信息 relay_log_recovery=ON rpl_semi_sync_master_enabled=ON ##设置半同步 master 和 slave 开启 rpl_semi_sync_slave_enabled=ON 重新启动两台服务器上的 mysql /etc/init.d/mysqld restart 进入数据库下载半同步模块 mysql> install plugin rpl_semi_sync_master soname 'semisync_master.so'; Query OK, 0 rows affected (0.50 sec) mysql> set global rpl_semi_sync_master_enabled=1; Query OK, 0 rows affected (0.00 sec) 给所创建的认证用户复制权限及 root 用户所有权限的授权 mysql> grant all privileges on *.* to 'root'@'172.168.40.%' identified 'xxxxxxxxxx'; Query OK, 0 rows affected, 1 warning (0.00 sec)by mysql> grant replication slave on *.* to 'redhat'@'172.168.40.%' identified by 'xxxxxxxxx'; mysql> grant all on *.* to root@'172.25.40.%' identified by 'xxxxxxxx'; Query OK, 0 rows affected, 1 warning (0.38 sec) Slave(candidate master)端配置: yum install perl-DBD-mysql -y rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm 构建免密登陆 ssh-keygen ##生成密钥 ssh-copy-id 172.25.40.1 ##给另外两台 mysql 主机分发,这样可以免密连接 ssh-copy-id 172.25.40.3 mysql 主配置文件(/etc/my.cnf)配置。 (编辑:航空爱好网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐