高级技术Mysql读写分离.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高级技术Mysql读写分离

MySQL读写分离-架构 简介 对于很多大型网站(pv值百万、千万)来说,在所处理的业务中,其中有70%的业务是查询(select)相关的业务操作(新闻网站,插入一条新闻。查询操作),剩下的则是写(insert、update、delete,只要能对MySQL的数据造成更改的操作都叫写操作)操作。在使用负载均衡集群之后,可以很大程度的提升网站的整体性能,但是最终的数据处理的压力还是会落到MySQL数据库上,所有很有必要使用一些技术来提升MySQL的负载能力。(读写分离) 写专门交给写服务器处理(一般网站来说写是比较少的 读写比 4:1) 那么需要把读的任务分配多台服务器来完成的架构,就叫做读写分离。 实现方式 第一种:php程序上自己做逻辑判断,写php代码的时候,自己在程序上做逻辑判读写匹配。select,insert、update、delete做正则匹配,根据结果选择写服务器(主服务器)。如果是select操作则选择读服务器(从服务器器) mysql_connect(‘读写的区分’) 第二种:MySQL- Proxy是实现“读写分离(Read/Write Splitting)”的一个软件(MySQL官方提供 ,也叫中间件),基本的原理是让主数据库处理写操作(insert、update、delete),而从数据库处理查询操作(select)。而数据库的一致性则通过主从复制来实现。所以说主从复制是读写分离的基础。 注意:MySQL-proxy它能实现读写语句的区分主要依靠的是内部一个lua脚本(能实现读写语句的判断)。 注意:如果只在主服务器(写服务器)上完成数据的写操作话;这个时候从服务器上没有执行写操作,是没有数据的。这个时候需要使用另外一个技术来实现主从服务器的数据一致性,这个技术叫做 主从复制技术。所以说主从复制是读写分离的基础。 也可以从官方下载。 下载地址:/mysql/MySQL-Proxy/ 如何查看Linux下c库的版本? 注意通用二进制包需要c库版本一致,或者操作系统的c库比安装包高 # uname -a (unix name --all) 拓扑结构-架构图 一主两从 MySQL-proxy 负载均衡的软件(读写分离实现) 使用三台服务器搭建环境 一台主(写)服务器 2 这台主服务器还运行一个读写分离的软件 mysql-proxy 二台从(读)服务器 6 7 注意事项 防火墙的关闭 selinux关闭 selinux永久关闭 root账户必须有远程登录的权限 MySQL的版本需要为 5.5 及以上 主从复制搭建 先配置主服务器 然后在配置从服务器 主服务操作 1. 主服务上的配置 在主服务上添加一个授权的账户,使得到时候从服务器可以使用该账号来完成数据的获取 # GRANT REPLICATION SLAVE ON *.* TO repuser@192.168.%.% IDENTIFIED BY admin88; 添加了一个 repuser的用户,密码为admin88 可以在 192.168.这个网段完成数据的复制。 查看 在主服务器上使用 show master status 查看主服务上现在正在使用的bin日志文件和记录的位置。(bin日志文件默认在MySQL的data目录) 从服务器的配置 修改从服务器的配置文件 使用在主服务器上的授权账号去连接主服务器,等待主服务器的数据的写入后,通知获取 # CHANGE MASTER TO MASTER_HOST=2, MASTER_USER=repuser, MASTER_PASSWORD=admin88, MASTER_LOG_FILE=master-bin.000002, MASTER_LOG_POS=107; 使用上面的语句连接主服务器后,使用 # show slave status\G 开启从服务器 命令: stop slave 可以停止 从服务器 reset slave 清空从服务器的规则 start slave 启动从服务器 show slave status 查看从服务器状态 show master status 查看主服务器状态 读写分离搭建 mac的前世今生 /cY4gQ6sXWaTXd 访问密码 7a0b 下载mysql-proxy /mysql/MySQL-Proxy/ mysql-proxy上传 解压操作 #tar -zxvf mysql-proxy-0.8.4-linux-rhel5-x86-32bit.tar.gz -C /usr/local/ 为mysql-proxy创建一个符号链接 添加一个mysql-proxy用户 # useradd mysql-proxy 命令查看 6. 在下面路径创建一个admin.

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档