国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統 > 正文

利用oneproxy部署mysql數據庫的讀寫分離

2024-06-28 13:19:22
字體:
來源:轉載
供稿:網友
利用onePRoxy部署MySQL數據庫的讀寫分離

實驗系統:CentOS 6.6_x86_64

實驗前提:防火墻和selinux都關閉

實驗說明:本實驗共有4臺主機,ip分配如拓撲

實驗軟件:mariadb-10.0.20  oneproxy-rhel5-linux64-v5.6-ga

下載地址:http://pan.baidu.com/s/1jGpL2o2

實驗拓撲:

    

注意:本實驗是之前mysql-proxy實驗的拓展,因此大部分環境及設定是相同的,其中一、二步這里不再重復,具體請參考:利用mysql-proxy進行mysql數據庫的讀寫分離

一、準備工作

二、配置主從復制

三、安裝oneproxy

  1.此實驗中19.79為onproxy服務器,所以軟件安裝在此主機上:

tar xf oneproxy-rhel5-linux64-v5.6-ga.tar.gz -C /usr/local/cd /usr/local/oneproxyvim demo.sh ---------------------------------------------------------------->#/bin/bash#export ONEPROXY_HOME=/usr/local/oneproxy# valgrind --leak-check=full --show-reachable=yes /${ONEPROXY_HOME}/oneproxy --keepalive /                                       //自動檢查和重起OneProxy服務  --proxy-address=192.168.19.79:3306 /                                        //Proxy Server第一個監聽地址  --admin-address=192.168.19.79:4041 /                                        //管理端口地址  --proxy-master-addresses=192.168.19.66:3306@server1 /                       //Master節點地址(可寫入節點),其中@后面是“Server Group”的名字,如果不指定,則默認為“default”  --proxy-slave-addresses=192.168.19.74:3306@server1 /                        //Slave節點地址(可讀取節點)  --proxy-slave-addresses=192.168.19.76:3306@server1 /  --proxy-user-list=test/14B1772BA9874974E6ECEA0745EE774930E2EFA3 /           //Proxy用戶列表(用戶名/口令),進行完第2步之后回來配置  --proxy-part-tables=${ONEPROXY_HOME}/part.txt /  --proxy-found-rows /  --event-threads=4 /                                                         //OneProxy的工作線程數  --proxy-group-policy=server1:2 /                                            //定義MySQL集群的路由訪問策略,這里配置的是從Slave讀取,如果Slave端不可用,則從Master端讀取  --proxy-group-security=server1:0 /                                          //定義MySQL集群的安全訪問策略  --proxy-memory-db=root/@::test /  --proxy-memory-engine /  --proxy-sql-autosave=${ONEPROXY_HOME}/sql_firewall.sql /  --log-file=${ONEPROXY_HOME}/oneproxy.log /  --pid-file=${ONEPROXY_HOME}/oneproxy.pid

  2.查看密碼字符并配置:

chmod +x demo.sh ./demo.sh mysql -uadmin -pOneProxy -h192.168.19.79 --port=4041                   //進入管理接口-------------------------------------------------------------------->passwd 'redhat';                                                       //查看密碼字符,并寫入demo.sh中+--------+------------------------------------------+| TEXT   | PASSWord                                 |+--------+------------------------------------------+| redhat | 14B1772BA9874974E6ECEA0745EE774930E2EFA3 |+--------+------------------------------------------+

  3.在master上創建測試用戶:

/usr/local/mysql/bin/mysql----------------------------------------------->GRANT ALL ON *.* TO 'test'@'192.168.19.%' IDENTIFIED BY 'redhat';      //這里要和demo.sh中的Proxy用戶列表信息保持一致FLUSH PRIVILEGES;

  4.回到oneproxy服務器啟動進程:

killall -9 oneproxy           //先清理掉之前的進程./demo.sh tail -f oneproxy.log          //查看日志

    

mysql -uadmin -pOneProxy -h192.168.19.79 --port=4041----------------------------------------------------------------->LIST BACKEND;+------+--------------------+-----------+--------+--------+----------+--------+---------+------+------+-------+---------+-------+---------+-------+---------+------+------+---------+| INDX | ADDRESS            | TYPE      | STATUS | MARKUP | REQUESTS | DEGREE | GROUP   | IS_M | IS_S | MFile | MOffset | DFile | DOffset | RFile | ROffset | IO   | SQL  | Seconds |+------+--------------------+-----------+--------+--------+----------+--------+---------+------+------+-------+---------+-------+---------+-------+---------+------+------+---------+|    1 | 127.0.0.1:3306     | RW/Master | UP     |      0 |        0 |      0 |         | No   | No   |  NULL |    NULL |  NULL |    NULL |  NULL |    NULL | NULL | NULL |    NULL ||    2 | 192.168.19.66:3306 | RW/Master | UP     |      1 |        0 |      0 | server1 | No   | No   |  NULL |    NULL |  NULL |    NULL |  NULL |    NULL | NULL | NULL |    NULL ||    3 | 192.168.19.74:3306 | RO/Slave  | UP     |      1 |        0 |      0 | server1 | No   | No   |  NULL |    NULL |  NULL |    NULL |  NULL |    NULL | NULL | NULL |    NULL ||    4 | 192.168.19.76:3306 | RO/Slave  | UP     |      1 |        0 |      0 | server1 | No   | No   |  NULL |    NULL |  NULL |    NULL |  NULL |    NULL | NULL | NULL |    NULL |+------+--------------------+-----------+--------+--------+----------+--------+---------+------+------+-------+---------+-------+---------+-------+---------+------+------+---------+

    

  5.分別在三臺mariadb服務器上抓包:

    master:

tcpdump -i eth0 -nn -XX ip dst 192.168.19.66 and tcp dst port 3306

    slave1:

tcpdump -i eth0 -nn -XX ip dst 192.168.19.74 and tcp dst port 3306

    slave2:

tcpdump -i eth0 -nn -XX ip dst 192.168.19.76 and tcp dst port 3306

  6.在oneproxy上進行數據庫創建及讀取:

mysql -utest -predhat -h192.168.19.79       //連接到oneproxy

    數據庫命令這里不再寫出,大家可以從圖片可以看出,所有寫操作都在master上進行,讀操作被負載均衡至slave上。

    

    

    

    

    

    

  至此,實驗成功,謝謝!如有問題,請聯系我,QQ:82800452


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 逊克县| 道孚县| 翁牛特旗| 二连浩特市| 江门市| 杨浦区| 玉山县| 德兴市| 德令哈市| 雷波县| 分宜县| 浪卡子县| 铁岭县| 磐安县| 连江县| 毕节市| 尼玛县| 阜平县| 南平市| 太原市| 讷河市| 贡山| 武山县| 珠海市| 赫章县| 丽水市| 乌鲁木齐县| 吉水县| 太保市| 嵩明县| 淮安市| 石景山区| 蕉岭县| 天祝| 吉林市| 平江县| 开平市| 铁力市| 通渭县| 栾川县| 新和县|