MySQL的3节点主从同步复制方案
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL的3节点主从同步复制方案相关的知识,希望对你有一定的参考价值。
上篇文章《为什么要对mysql做主从同步复制》我们说明了MySQL主从同步的作用,主从同步的原理和主从同步的缺点。下面我们介绍下3节点中:2个节点互为主从,1个节点作为前2个节点的从,用于实现MySQL5.6的3节点主从同步复制方案。
主要步骤如下:
1.配置MasterA端同步复制时所需要的选项
2.在MasterA主库上创建同步复制时的用户并授权
3.MasterA主库锁表
4.记录MasterA主库的binlog以及pos位置节点
5.导出MasterA主库m_s_rep数据库
6.配置MasterB端同步复制时所需要的选项
7.在MasterB上创建数据库m_s_rep并导入主库备份
8.在MasterB上创建同步复制时的用户并授权
9.记录MasterB从库的binlog以及pos位置节点
10.配置MasterA和MasterB互为主从并开启从库同步
11.查看MasterB的relay-log以及master.info
12.MasterA主库解锁
13.配置Slave端同步复制时所需要的选项
14.在Slave端上创建数据库m_s_rep并导入主库备份
15.配置Salve端为MasterA和MasterB同步并开启同步
一.环境配置说明
1.IP地址分配
Hostname IP地址 节点
MYSQL01 10.62.83.201 MasterA
MYSQL02 10.62.83.202 MasterB
MYSQL03 10.62.83.203 Slave
2.协议和端口
节点 服务 端口
MasterA mysqld 3306
MasterB mysqld 3306
Slave mysqld 3306
3.软件包版本
软件 版本号
OS CentOSrelease 6.7 (Final)
MySQL MySQL-5.6.27-1.el6.x86_64.rpm-bundle.tar
JDK java-1.8.0-openjdk-1.8.0.20-3.b26.el6.x86_64
二.安装MySQL前准备
在3个节点中,分别安装如下MySQL5.6.27依赖包,执行步骤如下:
1.依赖包安装
# yum install -y openssl* openssl-devel zlib-devel gcc gcc-c++make autoconf readline-devel curl-devel expat-devel gettext-devel ruby
2.卸载OS默认低版本的openjdk
# rpm-qa | grep jdk
# yum-y remove java-1.6.0 java-1.7.0
3.安装java运行环境openjdk-1.8.0
# yum-y install java-1.8.0
4.配置JDK环境变量$JAVA_HOME
# vim/etc/profile
exportJAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.20-3.b26.el6.x86_64/bin/java#new add content
5.配置DNS本地域名解析
# vim/etc/hosts
10.62.83.201 MYSQL01 #new add content
10.62.83.202 MYSQL02
10.62.83.203 MYSQL03
6.卸载OS中旧版本的mysql-libs
# cd / && rpm-qa |grep mysql*
# yum -y removemysql-libs-5.1.73-3.el6_5.x86_64
7.防火墙配置
你可以选择关闭iptables,或者配置iptables规则。
三.安装MySQL程序包
在3个节点分别安装MySQL5.6.27如下软件包,执行步骤如下:
1.解压tar包
# cd /usr/local/data
# tar xfMySQL-5.6.27-1.el6.x86_64.rpm-bundle.tar
2.安装rpm包
# yum -y installMySQL-client-5.6.27-1.el6.x86_64.rpm MySQL-server-5.6.27-1.el6.x86_64.rp
四.主从关系配置准备
MySQL5.6.27初始登陆的密码是一串salt密码,为了便于登录MySQL,在3个节点分别执行如下配置:
1.登录MySQL配置
启动mysql服务:
# service mysql start
Starting MySQL. SUCCESS!
查看各个节点的mysql初始密钥文件:
# cat/root/.mysql_secret
# The random passwordset for the root user at Thu Nov 511:12:13 2015 (local time): MzmPQ1uPJ0Sgyki4
登录mysql:
# mysql -u root –p # 复制粘贴或手动输入密钥
登录后,设置mysql登录的新密码:
mysql > SET PASSWORDFOR ‘root‘@‘localhost‘ = PASSWORD(‘mysql‘);
mysql > flushprivileges;
mysql > exit;
本文出自 “Jessen6的博文” 博客,请务必保留此出处http://zkhylt.blog.51cto.com/3638719/1775380
以上是关于MySQL的3节点主从同步复制方案的主要内容,如果未能解决你的问题,请参考以下文章