MySQL主从复制读写分离配置教程

上传人:pu****.1 文档编号:469860123 上传时间:2023-07-11 格式:DOCX 页数:19 大小:410.58KB
返回 下载 相关 举报
MySQL主从复制读写分离配置教程_第1页
第1页 / 共19页
MySQL主从复制读写分离配置教程_第2页
第2页 / 共19页
MySQL主从复制读写分离配置教程_第3页
第3页 / 共19页
MySQL主从复制读写分离配置教程_第4页
第4页 / 共19页
MySQL主从复制读写分离配置教程_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《MySQL主从复制读写分离配置教程》由会员分享,可在线阅读,更多相关《MySQL主从复制读写分离配置教程(19页珍藏版)》请在金锄头文库上搜索。

1、MySQL主从复制+读写分离配置教程实验环境:CENTOS 6.3实验准备:三台计算机安装centos6.3系统,内存要求625MB以上;计算机配置: 主: Tang 192.168.4.2/24 192.168.4.1(网关)从: test 代理: proxy 理论知识:首先要明确mysql群集中可以有一个主服务器对多个从服务器,但一个从服务器只能属于一个主服务器,否则会导致数据混乱。mysql5.5及以前的版本:复制功能相对简单mysql5.6之后:引用了gtid全局事物号;以及多线程复制multi-thread,replication配置mysql复制的基本步骤:一、master配置1、

2、 启用二进制日志Log-bin = master-binLog-bin-index=master-bin.index2、 选择唯一的server-idserver-id = (1到2的32次方-1)3、 创建具有复制权限的用户replication slavereplication client二、slave配置1、 启用中继日志relay-log = relay logrelay-log-index=可以不写2、 选择唯一的server-id不能比主服务器靠前3、 连接至主服务器,并开始复制数据;mysqlchange master to master_host= xxx,master_po

3、rt=xxx ,master_log_file=xxx,master_log_file_pos=xxx,master_user=xxx,master_password=xxx;/主节点日志供从节点复制的起始位置是用于主节点已经运行了一段时间,由于业务繁忙加入从节点实现读写分离,然而从节点复制的起始位置不同与主服务器更新同步所花的时间长短有关。mysqlstart slave;start salve IO_Thread;start slave SQL_Thread;复制线程:master:dumpslave:IO_Thread,SQL-Thread当master不在线时,master的dump停

4、止了,slave的I/Othread访问不了dump,所以它也无法工作,但是SQL_thread没有停止,它一直处于等待状态。而且SQL_thread是多线程的工作的。 实验步骤:首先来配置主节点 Tang计算机开机进入系统后,检查是否安装mysql相关组件并查看组件安装是否齐全;#yum list |grep mysql 如果你不知道你的组件安装是否齐全,可以先卸载掉原先已安装的命令 (sudo) rpm e nodeps mysql配置网卡选项保存退出后,修改配置文件wq! 保存退出然后查看网卡是否配置正确用yum 安装mysql组件(包括服务端和客户端)安装完成过后启动mysql服务为r

5、oot设置一个登录mysql的密码通过客户端登录mysql登录到mysql是一个这样的界面 (在mysql里以;表示一个完整的语句)我们在主节点上创一个专用复制用的户然后授予这个用户由从服务器登录可以复制数据的权限然后配置mysql的配置文件使得master的主机支持复制功能这是默认的配置文件,我们要在上面添加一些设置修改后改完配置文件后重启服务 接下来配置从服务器配置好网卡,安装mysql的相关组件,设置完密码之后修改从服务器的mysql的配置文件然后登录mysql让从节点指向主节点启动复制然后再回到主服务器上关闭iptables和SeLinux然后登录mysql创建数据库和表用些简单的操作

6、多做一些数据然后验证,在从节点上是否已经有这些数据了。总结:查看binlog内容SHOW BINLOG EVENTSGo Log_name:日志名称,指定的记录操作的binlog日志名称,这里是m-bin.000001,与我们前面在/etc/f中配置的相对应o Pos:记录事件的起始位置o Event_type:事件类型o End_log_pos:记录事件的结束位置o Server_id:服务器标识o Info:事件描述信息查看从节点复制状态1SHOW SLAVE STATUSG;主从复制场景中常用到的几个相关命令:o 终止主节点复制1STOP MASTER;o 清除主节点复制文件1RESET

7、 MASTER;o 终止从节点复制1STOP SLAVE;o 清除从节点复制文件1RESET SLAVE;o 查看主节点复制状态1SHOW MASTER STATUSG;在从节点访问主节点设置的时候我们也可以添加起始值master_log_file=mysql-bin.000004, #起点日志文件master_log_pos=418, #起点位置master_connect_retry=10; #连接重试间隔 接下来我们做读写分离,主要操作步骤在proxy计算机上进行,如果是在别的计算机执行的造作会有标识。能够实现读写分离的应用Mysql Proxy(lua) 官网认为proxy还不是正式的

8、版本太过依赖lua所以版本号一直都是0开头的l lual 连接路由、query分析、查询过滤和修改、负载均衡、HAAmeoba(Java)l 查询路由、查询分析、查询过滤、读写分离、负载均衡、HACobar(Java)l 基于Ameoba开发本次实验采用mysql proxy来做首先要解决依赖问题libevent 1.x 或更高glib2 2.6.0 或更高lua 5.1.x 或更高pkg-configlibtool 1.5 或更高MySQL 5.0.x 或更高的开发库上述的软件包可以直接yum安装然后到mysql的官网下载mysql-proxy链接地址 找到选择相应的系统,也可以选择linu

9、x通用下载下来共享给虚拟机proxy这是一个编译好的软件包,解压之后设置变量就可以直接用了我们先为mysql proxy创建一个用户然后解压到本地用户目录下接着再创建一个链接为了我们方便使用这个命令把它加入变量在里面加入来看这个命令的参数然后执行值得注意的是,如果你的mysql-proxy是0.8.3以前的你要自己去找一个admin.lua,0.8.4是自带的。在你编译好的mysql-proxy文件夹下,lua执行读写分离的脚本也在这个文件夹下。所以“=”后面的值根据自己的情况定义。在帮助命令中你也可以发现很多字符串是可以简写的比如:下面进行验证在从节点上远程访问proxy的mysql客户端,在这个环境下proxy客户端相当于用户可以执行写操作,而作为从节点的test是不肯能可执行写操作的,但它可以复制从节点test远程连接proxy,这里的权限要自己创建,用grant命令创建一个数据库让后到主节点Tang上去查看有没有这个数据库然后去从节点看有没有复制过来完成了,其实启动mysql-proxy也可以通过配置文件,可以是单独的一个配置文件,也可以和mysql的f结合在一起,不过要加mysql-proxy这一行。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号