mysql MHA 及多主复制

一.MHA(主节点高可用)

 

 

 

 

 

二.多主复制:

原理:多个msyql/mariadb之间可以实时同步,任意节点的操作可以立即同步到其他节点,底层采用galera插件同步,类似rsync,上层mysql相对于galera是透明的,可以实现多节点同时读写(无法实现读写分离)。

NOTE:普通的msyql/mariadb无法集成galera,要想使用galera必须编译msyql/mariadb让其拥有调用galera 的能力,或者可以直接下载支持galera的mysql/mariadb。

环境:

1.采用三节点

   节点一:192.168.85.136

   节点二:192.168.85.137

   节点三:192.168.85.138

2.系统平台:

Red Hat Enterprise Linux Server release 6.7 (Santiago)

3.关闭防火墙(所有节点执行)

/etc/rc.d/init.d/iptables stop

setenforce 0

4.设置galera.repo

http://releases.galeracluster.com//mysql-wsrep-5.5/redhat/6/x86_64/      #mysql-server软件包
http://releases.galeracluster.com//galera-3/redhat/6/x86_64/                   #galera组件

将上面地址加入yum repo

5.查看libgalera_smm.so路径(mysql 会调用此模块像其他节点同步数据)

rpm -ql galera-3-25.3.25-2.el6.x86_64 | grep smm.so

 /usr/lib64/galera-3/libgalera_smm.so

6.配置my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

wsrep_node_name=node1
wsrep_provider=/usr/lib64/galera-3/libgalera_smm.so
wsrep_sst_method=rsync
port=3306
user=mysql
default_storage_engine=InnoDB
innodb_autoinc_lock_mode=2
innodb_locks_unsafe_for_binlog=1
innodb_flush_log_at_trx_commit=0
innodb_doublewrite=0
innodb_file_per_table=1
binlog_format=ROW
log-bin=mysql-bin
server-id=101
relay-log=mysql-relay-bin
log-slave-updates=1
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

三个节点全部同步此配置文件,需注意:

wsrep_node_name=node1     #配置成节点node名称
wsrep_provider=/usr/lib64/galera-3/libgalera_smm.so    #就是刚才我们查出的模块路径


7.启动mysql:
node1:service mysql start --wsrep_cluster_address=gcomm://
node2:service mysql start --wsrep_cluster_address=gcomm://192.168.85.136
node3:service mysql start --wsrep_cluster_address=gcomm://192.168.85.137

8.验证:
在node1上创建数据库:

mysql MHA 及多主复制

 


在其余node查看:

node2:
mysql MHA 及多主复制

node3:

mysql MHA 及多主复制

接下来可以将集群信息写入到my.cnf
在每个节点中my.cnf 文件mysqld段中加入:
wsrep_cluster_address="gcomm://192.168.85.136,192.168.85.137,192.168.85.138"

################################################################################
上一篇:MHA实现mysql高可用架构


下一篇:MySQL5.7 MHA安装配置