如何搭建MySQL高可用嗯架构?相信大部分人都还没学会这个技能,为了让大家学会,给大家总结了以下内容,话不多说,一起往下看吧。
嗯高可用架构
<强>嗯(MySQL -主复制经理)强>是一套支持双主故障切换和双主日常管理的脚本程序.MMM使用Perl语言开发,主要用来监控和管理MySQL -主(双主)复制,可以说是MySQL主主复制管理器。虽然叫做双主复制,但是业务上同一时刻只允许对一个主进行写入,另一台备选主上提供部分读服务,以加速在主主切换时刻备选主的预热,可以说嗯这套脚本程序一方面实现了故障切换的功能,另一方面其内部附加的工具脚本也可以实现多个奴隶的阅读负载均衡。关于MySQL主主复制配置的监控,故障转移和管理的一套可伸缩的脚本套件(在任何时候只有一个节点可以被写入),这个套件也能对居于标准的主从配置的任意数量的从服务器进行读负载均衡,所以你可以用它来在一组居于复制的服务器启动虚拟ip,除此之外,它还有实现数据备份,节点之间重新同步功能的脚本。
引用><代码> 嗯提供了自动和手动两种方式移除一组服务器中复制延迟较高的服务器的虚拟ip,同时它还可以备份数据,实现两节点之间的数据同步等。由于嗯无法完全的保证数据一致性,所以嗯适用于对数据的一致性要求不是很高,但是又想最大程度的保证业务可用性的场景.MySQL本身没有提供复制故障转移的解决方案,通过嗯方案能实现服务器的故障转移,从而实现mysql的高可用。对于那些对数据的一致性要求很高的业务,非常不建议采用嗯这种高可用架构。代码>嗯架构图:
<强>嗯这种模式,主人,奴隶贩子容易被控死,两个就两个
引用>
尼古拉斯模式,有高可扩展性,一主双备,一个区域。再扩展一主双备,一个区域
都要安装节点
强>首先我们开五台虚拟机,做规划
<强>主服务器1,192.168.136.191 db1,
主服务器2,192.168.136.168 db2,
从服务器1,192.168.136.185 db4,
从服务器2,192.168.136.184 db4,
监控服务器,192.168.136.135 强>配置阿里云源。每台服务器都要装
<代码> wget - o/etc/yum.repos.d/CentOS-Base。回购http://mirrors.aliyun.com/repo/centos - 7.回购代码>安装epel-release源,每台服务器都要装
<代码> yum - y epel-release安装 百胜清洗所有的,,百胜makecache 代码>搭建本地百胜源,所有服务器都要装,除了监控服务器
<代码> yum安装mariadb-server mariadb - y”代码>修改主配置文件,出来监控服务器其他四台都要修改。复制,粘贴就行。
<代码> vim/etc/my.cnf 9 dd (mysqld) log_error=/var/lib/mysql/mysql.err 日志=/var/lib/mysql/mysql_log.log log_slow_queries=/var/lib/mysql_slow_queries.log information_schema binlog-ignore-db=mysql character_set_server=utf8 log_bin=mysql_bin server_id=1, #注意每台id都要是不一样的 log_slave_updates=true sync_binlog=1 auto_increment_increment=2 auto_increment_offset=1 代码>每台服务器都要关防火墙,增强功能,开启数据库
<代码> systemctl firewalld.service停止 setenforce 0 systemctl mariadb开始。服务代码><代码> [root@localhost ~] # mysql #进入M1数据库 进入M1服务器查看日志文件的名称和位置值 MariaDB[(一)]比;显示主状态;#查看日志文件的名称和位置值 + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + |文件,,,,,,| |位置Binlog_Do_DB | Binlog_Ignore_DB,,,,| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | mysql_bin。000003 |,,245 |大敌;,,,,,| mysql, information_schema | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + 代码>进入M2服务器查看日志文件的名称和位置值
<代码> MariaDB[(没有)]比;显示主状态; + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + |文件,,,,,,| |位置Binlog_Do_DB | Binlog_Ignore_DB,,,,| + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + | mysql_bin。000003 |,,245 |大敌;,,,,,| mysql, information_schema | + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +MySQL高可用嗯架构的搭建