MySQL主从复制+读写分离配置教程
实验环境:CENTOS
实验准备:,内存要求625MB以上;
计算机配置:
主: Tang (网关)
从: test
代理: proxy
理论知识:
首先要明确mysql群集中可以有一个主服务器对多个从服务器,但一个从服务器只能属于一个主服务器,否则会导致数据混乱。
:复制功能相对简单
:引用了gtid全局事物号;以及多线程复制multi-thread,replication
配置mysql复制的基本步骤:
一、master配置
启用二进制日志
Log-bin = master-bin
Log-bin-index=master-
选择唯一的server-id
server-id = (1到2的32次方-1)
创建具有复制权限的用户
replication slave
replication client
二、slave配置
启用中继日志
relay-log = relay –log
relay-log-index=可以不写
选择唯一的server-id
不能比主服务器靠前
连接至主服务器,并开始复制数据;
mysql> change master to
master_host=’ xxx’,
master_port=’xxx ’,
master_log_file=’xxx’,
master_log_file_pos=’xxx’,
master_user=’xxx’,
master_password=’xxx’;
//主节点日志供从节点复制的起始位置是用于主节点已经运行了一段时间,由于业务繁忙加入从节点实现读写分离,然而从节点复制的起始位置不同与主服务器更新同步所花的时间长短有关。
mysql> start slave;
start salve IO_Thread;
start slave SQL_Thread;
复制线程:
master:dump
slave:IO_Thread,SQL-Thread
当master不在线时,master的dump停止了,slave的I/Othread访问不了dump,所以它也无法工作,但是SQL_thread没有停止,它一直处于等待状态。而且SQL_thread是多线程的工作的。
实验步骤:
首先来配置主节点 Tang
计算机开机进入系统后,检查是否安装mysql相关组件并查看组件安装是否齐全;
#yum list |grep mysql
如果你不知道你的组件安装是否齐全,可以先卸载掉原先已安装的
命令(sudo) rpm –e –nodeps mysql
配置网卡选项
保存退出后,修改配置文件
wq! 保存退出
然后查看网卡是否配置正确
用yum 安装mysql组件(包括服务端和客户端)
安装完成过后启动mysql服务
为root设置一个登录mysql的密码
通过客户端登录mysql
登录到mysql是一个这样的界面(在mysql里以;表示一个完整的语句)
我们在主节点上创一个专用复制用的户
然后授予这个用户由从服务器登录可以复制数据的权限
然后配置mysql的配置文件使得master的主机支持复制功能
这是默认的配置文件,我们要在上面添加一些设置
修改后
改完配置文件后重启服务
接下来配置从服务器
配置好网卡,安装mysql的相关组件,设置完密码之后
修改从服务器的mysql的配置文件
然后登录mysql
让从节点指向主节点
启动复制
然后再回到主服务器上关闭iptables和SeLinux
然后登录mysql创建数据库和表
用些简单的操作多做一些数据
MySQL主从复制+读写分离配置教程(精选) 来自淘豆网m.daumloan.com转载请标明出处.