mysql怎么搭建高可用 mysql怎么实现高可用

MySQL+Keepalived 高可用性实战1、准备三台虚拟机,选择两台mysql作为keepalived(一台master 一台backup) , 一台做客户端访问用 。
2、给两台mysql安装keepalived制作高可用生成VIP
我这里用的是mysqld
yum安装mysql
实施步骤:
一、mysql 主主同步 略
二、安装keepalived---两台机器都操作
三添加库用于测试
四 在任意一台机器作为客户端
测试的时候记得检查mysql用户的可不可以远程登录 。
实现了VIP的漂移 , 实现了mysql的高可用 。
mysql+MHA+keepalived高可用方案关于基础介绍及原理略过mysql怎么搭建高可用,直接上操作步骤吧 。
mysqlmysql怎么搭建高可用:5.7
操作系统:centos7.4
地址规划:
MHA manage:10.21.20.89
mysql主:10.21.20.71
mysql从1:10.21.20.131
mysql从2:10.21.20.132
vip:10.21.20.77
(3)将mharepo.tar.gz上传四台需要安装的服务器解压 。然后新建一个yum文件,指向解压的目录 。
(4) 安装MHA,在3台mysql上安装node,在管理节点安装manager 。
在主库和从库上观察ip发现,vip已经自动漂移到从库上 。至此高可用完成 。
基于MySQL双主的高可用解决方案理论及实践 MySQL在互联网应用中已经遍地开花 , 但是在银行系统中,还在生根发芽的阶段 。本文记录的是根据某生产系统实际需求,对数据库高可用方案从需求、各高可用技术特点对比、实施、测试等过程进行整理,完善Mysql高可用方案,同时为后续开展分布式数据库相关测试做相应准备 。
存储复制技术: 传统IOE架构下,常用高可用方案,靠存储底层复制技术实现数据的一致性 , 优点数据安全性有保障 , 限制在于是依赖存储硬件,实施成本较高 。
keepalived+双主复制: 两台MySQL互为主从关系,即双主模式,通过Keepalived配置虚拟IP,实现当其中的一台数据库故障时,自动切换VIP到另外一台MySQL数据库,备机快速接管业务来保证数据库的高可用 。
MHA:MHA部署在每台mysql服务器上,定时探测集群中的master节点,当master出现故障时,它可以自动将最新的slave提升为新的master,然后将所有其他的slave重新指向新的master,优点在最大程度保证数据的一致性的前提下实现快速切换 , 最少需要3台服务器,存在数据丢失的可能性 。
PXC:Percona eXtra Cluster是Percona基于galera cluster封装的集群方案 。不同于普通多主复制,PXC保障强一致性和实时同步,故障切换更快 。但是也需要3个节点,配置相对复杂,对性能也稍有影响 。
除了上述方案外,还有MMM、Heartbeat+DRBD等高可用方案,此处不做详细介绍 。
综合评估下,本次实施采用了 keepalived+mysql双主实现数据库同城双机房的高可用 。MySQL版本为: 5.7.21 。操作系统:Red Hat Enterprise Linux Server 7.3 。
配置过程如下:
Mysql-master1: IP地址1 --以下简称master1
Mysql-master2: IP地址2 --以下简称master2
Mysql-vip : VIP地址 --应用连接使用
Mysql复制相关概念描述:
1、 Mysql主从复制图示:
2、 Mysql主从复制过程描述:
(1)master记录二进制日志:在每个事务更新数据完成之前,master在二进制日志记录这些改变 。MySQL将事务写入二进制日志 。在事务写入二进制日志完成后,master通知存储引擎提交事务 。
(2)slave将master的binarylog拷贝到自己的中继日志:首先,slave开始一个工作线程——I/O线程 。I/O线程在master上打开一个普通的连接 , 然后开始binlog dump process 。Binlog dump process从master的二进制日志中读取事务 , 如果已经同步了master,它会睡眠并等待master产生新的事件 。I/O线程将这些事务写入中继日志 。

推荐阅读