范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

有关于MySQL读写分离(建议收藏)

  1、简介
  当今MySQL使用相当广泛,随着用户的增多以及数据量的增大,高并发随之而来。然而我们有很多办法可以缓解数据库的压力。分布式数据库、负载均衡、读写分离、增加缓存服务器等等。这里我们将采用读写分离技术进展缓解数据库的压力。
  其中实现读写分离的技术有很多方法,这里我们将采用mysql-proxy这个中间软件来实现。这个软件中含有一个读写分离的lua文件,这也是我们使用mysql-proxy实现读写分离必用的文件,它需要lua解析器进行解析。因此我们还需要安装一个lua解析器 2、基本环境
  三台linux虚拟主机
  Linux版本CentOS6.6、MySQL 5.5
  mysql-proxy-0.8.5
  lua-5.1.4
  ip:192.168.95.11(写)、192.168.95.12(读)、192.168.95.13(mysql-proxy) 3、配置主从复制
  mysql主从复制与主主复制
  粗略介绍一下数据库的主从复制的配置:
  第一步:
  在192.168.95.11中创建一个192.168.95.12主机中可以登录的MySQL用户
  用户:mysql12
  密码:mysql12 mysql>GRANT REPLICATION SLAVE ON *.* TO ‘mysql12’@’192.168.95.12’ IDENTIFIED BY ‘mysql12’;  mysql>FLUSH PRIVILEGES;
  第二步:
  查看192.168.95.11MySQL服务器二进制文件名与位置 mysql>SHOW MASTER STATUS;
  第三步:
  告知二进制文件名与位置
  在192.168.95.12中执行: mysql> change master to     -> master_host="192.168.95.11",     -> master_user="mysql12",     ->  master_password="mysql12",     ->  master_log_file="mysql-bin.000124",     -> master_log_pos=586;
  第四步:
  在192.168.95.12中
  mysql>SLAVE START; #开启复制
  mysql>SHOW SLAVE STATUSG #查看主从复制是否配置成功
  主从复制配置成功!
  (注意:上面Relicate_Do_DB:aa表示主从复制只针对数据库aa【这是我之前设置的就没改了】,这里就不讲这个了,要想去了解学医这个的话可以参考文章http://www.cnblogs.com/phpstudy2015-6/p/6485819.html#_label7) 4、MySQL读写分离配置
  百度云下载:链接:https://pan.baidu.com/s/1FBW-76Ew-fOfNb0fW878ZQ 密码:? 4.1、安装lua
  官网下载:http://www.lua.org/download.html
  Lua 是一个小巧的脚本语言。Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。
  一个完整的Lua解释器不过200k,在目前所有脚本引擎中,Lua的速度是最快的。这一切都决定了Lua是作为嵌入式脚本的最佳选择。
  1)、安装lua需要依赖很多软件包。
  可以通过rpm -qa | grep name检查以下软件是否安装:
  gcc*、gcc-c++*、autoconf*、automake*、zlib*、libxml*、ncurses-devel*、libmcrypt*、libtool*、flex*、pkgconfig*、libevent*、glib*
  若缺少相关的软件包,可通过yum -y install方式在线安装,或直接从系统安装光盘中找到并通过rpm -ivh方式安装。(我的话一般是直接在系统光盘软件库中找到直接rpm安装的,有些找不到,则先在网上下载然后在ftp传给linux再进行安装)
  2)、依赖软件安装完毕后则进行编译安装lua
  MySQL-Proxy的读写分离主要是通过rw-splitting.lua脚本实现的,因此需要安装lua。
  官网下载:http://www.lua.org/download.html(下载源码包) # wget http://www.lua.org/ftp/lua-5.1.4.tar.gz   # tar zxvf lua-5.1.4.tar.gz  # cd lua-5.1.4   # make linux # make install # export LUA_CFLAGS="-I/usr/local/include" LUA_LIBS="-L/usr/local/lib -llua -ldl" LDFLAGS="-lm"  (我安装的时候是直接在光盘软件库中找到,直接rpm安装)4.2、安装mysql-proxy
   1)、首先查看linux版本确认是32位还是64为系统
  查看linux内核版本
  # cat /etc/issue
  查看linux版本
  # cat /proc/version
   2)、按系统位数下载(上面百度云链接64位的文件)
   3)、安装 # tar –zxvf mysql-proxy-0.8.5- linux-rhel5-x86-64bit.tar.gz # mkdir /usr/local/mysql-proxy # cp ./ mysql-proxy-0.8.5-linux-rhel5-x86-64bit/* /usr/local/mysql-proxy # cd /usr/local/mysql-proxy
  安装成功 5、MySQL读写分离测试1)、修改rw-splitting.lua文件
  修改默认连接,进行快速测试,不修改的话要达到连接数为4时才启用读写分离
  #cp /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua ./
  # vi rw-splitting.lua
  2)、修改完成后,启动mysql-proxy# cd /usr/local/mysql/bin # ./mysql-proxy --proxy-read-only-backend-addresses=192.168.95.12:3306 --proxy-backend-addresses=192.168.95.11:3306 --proxy-lua-script=/usr/local/mysql-proxy/rw-splitting.lua &
  参数:
  --proxy-read-only-backend-addresses  #只读服务器地址(ip)
  --proxy-backend-addresses       #服务器地址(主服务器)
  --proxy-lua-script            #lua脚本路劲
  &                     #表示后台执行
  3)、创建用于读写分离的数据库连接用户
  用户名:proxy1
  密 码:321 mysql>grant all on *.* to "proxy1"@"192.168.95.13" identified by "321"; mysql>use aa; mysql>create table tab1(id int auto_increment,name varchar(32) not null,primary key(id));
  【因为已经开启了主从复制所以,11、12主机mysql中都创建了这个用户】 4)、测试登陆账号proxy1@192.168.95.13进行添加数据
  可以使用任意ip客户端登陆这个账号
  在192.168.95.13登陆:
  # ./mysql -u proxy1 -P4040 -h192.168.95.13 –p
  在两个mysql中查看结果:一致
  结果表明:账号使用
  (ps:id是自增长,之前高主主复制的时候更改了配置文件,还没更改回来,就将就用着先吧) 5)、关闭12mysql的从复制
  mysql> stop slave;
  6)、证明写分离
  使用proxy1@192.168.95.13账号打开多个客户端进行插入数据
  打开三个mysql客户端分别插入2条数据: mysql> insert into tab1 (name) values("stop_slave11111");  ….  mysql> insert into tab1 (name) values("stop_slave6666’);
  查看:
  分别登陆11mysql与12mysql查看aa.tab1中的数据
  主数据库:
  从数据库:
  结果中显示插入的数据存在与主数据库,而从数据库没有,所以证明写能够分离。 7)、证明读分离
  使用proxy1@192.168.95.13账号登陆mysql,查看aa.tab1中的数据 mysql>use aa; mysql>select*from tab1;
  结果中显示只有从数据库的数据,结合上面的测试,可以证明读分离。 6、建议
  为了方便启动与管理mysql-proxy可以创建mysql-proxy服务管理脚本
  下面这个管理脚本仅适合以上我给出的安装路径位置
  【此管理脚本需要按照自己的安装路径做出相应的修改方可使用】  1 #!/bin/sh  2   3 #  4 # mysql-proxy This script starts and stops the mysql-proxy daemon  5 #  6 # chkconfig: - 78 30  7 # processname: mysql-proxy  8 # description: mysql-proxy is a proxy daemon to mysql  9  10 # Source function library. 11 . /etc/rc.d/init.d/functions 12  13 #PROXY_PATH=/usr/local/bin 14 PROXY_PATH=/usr/local/mysql-proxy/bin 15  16 prog="mysql-proxy" 17  18 # Source networking configuration. 19 . /etc/sysconfig/network 20  21 # Check that networking is up. 22 [ ${NETWORKING} = "no" ] && exit 0 23  24 # Set default mysql-proxy configuration. 25 #PROXY_OPTIONS="--daemon" 26  27 PROXY_OPTIONS="--proxy-read-only-backend-addresses=192.168.95.12:3306 --proxy-backend-addresses=192.168.95.11:3306 --proxy-lua-script=/usr/local/mysql-proxy/rw-splitting.lua" 28  29 PROXY_PID=/usr/local/mysql-proxy/run/mysql-proxy.pid 30  31 # Source mysql-proxy configuration. 32 if [ -f /etc/sysconfig/mysql-proxy ]; then 33         . /etc/sysconfig/mysql-proxy 34 fi 35  36 PATH=$PATH:/usr/bin:/usr/local/bin:$PROXY_PATH 37 # By default it"s all good 38 RETVAL=0 39  40 # See how we were called. 41 case "$1" in 42   start) 43         # Start daemon. 44         echo -n #34;Starting $prog: " 45         $NICELEVEL $PROXY_PATH/mysql-proxy $PROXY_OPTIONS --daemon --pid-file=$PROXY_PID --user=root --log-level=debug --log-file=/usr/local/mysql-proxy/log/mysql-proxy.log 46         RETVAL=$? 47         echo 48         if [ $RETVAL = 0 ]; then 49                 touch /var/lock/subsys/mysql-proxy] 50                 echo "ok" 51         fi 52        ;; 53   stop) 54         # Stop daemons. 55         echo -n #34;Stopping $prog: " 56         killproc $prog 57         RETVAL=$? 58         echo 59         if [ $RETVAL = 0 ]; then 60                 rm -f /var/lock/subsys/mysql-proxy 61                 rm -f $PROXY_PID 62         fi 63        ;; 64   restart) 65         $0 stop 66         sleep 3 67         $0 start 68        ;; 69   condrestart) 70        [ -e /var/lock/subsys/mysql-proxy ] && $0 restart 71       ;; 72   status) 73         status mysql-proxy 74         RETVAL=$? 75        ;; 76   *) 77         echo "Usage: $0 {start|stop|restart|status|condrestart}" 78         RETVAL=1 79        ;; 80 esac 81 exit $RETVAL#---我将mysql-proxy服务管理脚本放在了/usr/local/mysql-proxy/init.d/文件夹里 #---给执行权限,建立相应目录 #chmod +x /usr/local/mysql-proxy/init.d/mysql-proxy #mkdir /usr/local/mysql-proxy/run #mkdir /usr/local/mysql-proxy/log  #cd /usr/local/mysql-proxy/init.d/ #---启动mysql-proxy #./mysql-proxy start #---停止mysql-proxy #./mysql-proxy stop #---重启mysql-proxy #./mysql-proxy restart
  一些相关参数:
  PROXY_PATH=/usr/local/mysql-proxy/bin //定义mysql-proxy服务二进制文件路径
  --proxy-read-only-backend-addresses=192.168.95.12:3306 //定义后端只读从服务器地址
  --proxy-backend-addresses=192.168.95.11:3306 //定义后端主服务器地址
  --proxy-lua-script=/usr/local/mysql-proxy/rw-splitting.lua //定义lua读写分离脚本路径
  PROXY_PID=/usr/local/mysql-proxy/run/mysql-proxy.pid //定义mysql-proxy PID文件路径
  --daemon //定义以守护进程模式启动
  --keepalive //使进程在异常关闭后能够自动恢复【上面的管理脚本没有加上此参数】
  --user=root //以root用户身份启动服务
  --log-level=debug //定义log日志级别,由高到低分别有(error|warning|info|message|debug)
  --log-file=/usr/local/mysql-proxy/log/mysql-proxy.log //定义log日志文件路径
  (以上是自己的一些见解与总结,若有不足或者错误的地方请各位指出)
  如果本文对你有帮助,别忘记给我个3连 ,点赞,转发,评论,
  咱们下期见。
  原文出处:https://www.cnblogs.com/phpstudy2015-6/p/6687480.html

8K电视新款齐亮相,全民8K还会远吗最近,市面上有不少8K电视陆续上市,其中以海信为代表的电视机厂家在今年推出了数款8K超高清电视的新品,进一步扩大了8K电视的产品阵容。根据8K协会的统计,目前国内已经有超过70款8暗影骑士崭水冷主机体验8核i73070,4K高画质无压力对于游戏玩家而言,要想爽快的玩游戏,性能强大的台式机是最好的选择。今天我们给大家介绍的是最新款宏碁暗影骑士崭,这款游戏主机不仅有8核16线程规格的i711700处理器(816,2。危急时刻能救命!小米有品众筹六合一应急宝近几年,地震洪涝暴风雪等灾害接二连三突袭,导致很多人员来不及做好防御措施,尤其是在毫无信号灯源或交通完全受阻等情况下,人身安全更是容易受到威胁。因此,我们日常除了要了解多一些应急自面对骁龙888,OPPO一加realme无动于衷大家还记得8月17日iQOO8系列正式发布之后,有人喊出绿厂加油之事吗?当时的意思是小米有了屏下指纹手机荣耀有了骁龙888Plus手机,vivo系有了目前最强的屏幕机型。而OPPO魅族18Pro新售价确认,全系价格跌至新低,魅友终于等到了手机市场随着小米在手机市场上的逐渐崛起,线上手机市场也逐渐被大众所关注起来。而当年一起在线上手机市场发展的厂商,如今却只有小米在手机市场上做大做强了起来。像最开始一样关注线上手机市小米笔记本Windows11升级支持名单共计15款需8代酷睿及以上小米官网上线Windows11专题页面,公布了15款支持升级Windows11的笔记本系列。小米表示,升级推送计划目前仍在完善中,计划于2021年底开始并持续到2022年。这15款红米旗舰降价清仓,8256GB仅2699,骁龙8881亿像素作为性价比手机品牌代表,红米近几年热度相当高,每一款机型都拥有极致性价比,相比荣耀,OPPO,Vivo等线下机型,拥有相当高的性价比,可以说是性价比王者。虽然近几年Realme,IrealmeGT大师探索版和小米10s,选哪个?这两款手机在3000元这个价位都是非常不错的选择,性价比很高。真我GT大师探索版跟小米10S性能相差不大,想要更加轻薄的手感,比较在意充电速率和屏幕,可以选择真我GT大师探索版想要空调销售员总说变频空调好!那真是这样吗?千万别被忽悠花费冤枉空调销售员总说变频空调好!那真的是这样吗?千万别被忽悠花费冤枉夏天酷热是离不开空调来续命的,呆在空调房间里面真的是一分钟都不想离开,空调成了夏天的必需品,今天就一起教会大家如何正确张建玩机蓝牙耳机哪个好?细数2021蓝牙耳机品牌排行榜张建玩机多年,对于蓝牙耳机这款数码单品总算是有了一定程度的认识国际大牌的超贵,音质泛泛的倒很常见国内新秀的品牌,近年来崛起的还真不算少更多的考价格跑量的,则是滥竽充数的多所以被不少中国移动2021智能硬件质量报告三星S21Ultra综合能力最强8月24日,中国移动公布了中国移动2021智能硬件质量报告(第一期)。报告中针对2020年12月至2021年6月上市的5G手机进行了评测,涉及到11个品牌共43款产品。报告中分别拍
三星在东京最大的旗舰店开张,外墙装了1000部Galaxy手机三星在日本东京涩谷开了一家新旗舰店。手机自然是店里的主角,不仅是售卖的商品,还成了建筑的一部分。这是三星在东京最大的旗舰店,一是为了庆祝Galaxy系列问世十周年,二是为了配合20才发完折叠屏和S10三星又要开新品发布会?PConline资讯在刚过去的2月,三星在美国旧金山发布了万众瞩目的折叠屏GalaxyFold和GalaxyS10,这眼看新机才卖没多久,三星在自家的官方推特账号SamsungMo叽里呱啦联合创始人许可欣2019向三四线城市发力,用户至少增加1000万叽里呱啦联合创始人许可欣芥末堆3月19日讯,今日在叽里呱啦媒体见面会上,叽里呱啦联合创始人许可欣就叽里呱啦目前的运营情况和2019年的战略决策做出了分享。许可欣表示,今年将着力向三1700亿,小米年报公布,雷军真输给了董明珠文杨剑勇早前格力电器发布2018年度业绩预告,全年营收将达2000亿元,同比增长33。33,对比小米披露数据显示,全年营收为1749亿元,至此2013年一场围绕小米营收超越格力,并okhttp网络框架的封装easyokhttpeasyokhttp是对okhttp3上层封装的网络框架,支持文件上传和下载表单提交(文件和一个参数对应多值),链式调用,并且默认整合Gson,对返回结果多种转换,同时还支持HTT大快人心,只需一招,BAT毒瘤再也不敢滥用权限我们在之前的AndroidQ上手中提到,Android在系统权限管理中增加了一个大快人心的功能使用时授权。意思就是,某些毒瘤App,比如XX地图XX外卖,必须获得地理位置权限才能使百度入股汉得信息成其第三大股东三言财经3月20日消息,上海汉得信息技术股份有限公司(以下简称汉得信息)发布公告称,汉得信息控股股东实际控制人陈迪清范建震与北京百度网讯科技有限公司(以下简称百度)签署了北京百度网小米有哪些值得入手的产品?小米真是把比我便宜的没有我好,比我好的要比我贵很多的经营理念发挥到了极致呀。这样的小米生态链建立起来,优势还是特别的明显。所以米家的东西一般都不踩雷,毕竟人家追求的就是性价比。一台中国首辆氢能碳纤维车身乘用车武汉诞生中新社武汉3月20日电(裴道彰徐金波)武汉地质资源环境工业技术研究院(简称武汉资环工研院)透露,以氢能为动力采用碳纤维车身的格罗夫乘用车首辆样车20日在中国光谷研制成功。这标志着中南山铝业拟投4。53亿建电池高端铝箔生产线年产能2。1万吨摘要南山铝业公告,控股子公司铝压延公司拟投资建设高性能高端铝箔生产线项目,项目总投资4。53亿元,建成后年产高档铝箔21,000吨,其中高性能动力电池箔和数码消费类电池箔16,80羊驼教育完成1000万元PreA轮融资投资方为原创资本铅笔道获悉,羊驼教育近日完成了1000万元PreA轮融资,投资方为原创资本,融资将用于开发国际版App和其他事项。羊驼教育是随着PTE兴起而诞生的考培公司。创立于2017年,羊驼教