成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

MyCAT如何安裝使用

這篇文章主要介紹了MyCAT如何安裝使用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)是一家集網站建設,柏鄉(xiāng)企業(yè)網站建設,柏鄉(xiāng)品牌網站建設,網站定制,柏鄉(xiāng)網站建設報價,網絡營銷,網絡優(yōu)化,柏鄉(xiāng)網站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網站。

MyCAT安裝

mycat運行依賴于jre環(huán)境,需要首先安裝jdk7以上版本

檢查jdk版本
shell> java -version
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)

下載解壓mycat server1.5安裝文件
shell> tar zxvf Mycat-server-1.5-RELEASE-20160301083012-linux.tar.gz

創(chuàng)建mycat用戶,并設置環(huán)境變量
shell> groupadd mycat
shell> useradd -g mycat mycat
shell> passwd mycat
shell> chown -R mycat.mycat /usr/local/mycat
shell> vim /etc/profile 添加如下內容
export MYCAT_HOME=/usr/local/mycat
shell> source /etc/profile

測試環(huán)境介紹

Master:10.106.58.178
Slave:10.106.58.179
mycat:10.106.58.174

mycat配置

mycat1.5配置文件可以根據本地XML文件配置,也可以使用zookeeper來實現,本例介紹使用本地XML來配置。

配置文件介紹

  • conf/rule.xml 定義分片規(guī)則

  • conf/schema.xml 定義邏輯庫、表以及分片節(jié)點等內容

  • conf/server.xml 定義用戶授權及服務器參數相關配置

shell> more conf/schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://org.opencloudb/">
        <schema name="test" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1" />
        <dataNode name="dn1" dataHost="cluster1" database="test" />
        <dataHost name="cluster1" maxCon="1000" minCon="10" balance="0"
                writeType="0" dbType="MySQL" dbDriver="native" switchType="1"  slaveThreshold="100">
                <heartbeat>select user()</heartbeat>
                <writeHost host="hostM1" url="10.106.58.178:3306" user="root" password="123456" >
                        <readHost host="hostS1" url="10.106.58.179:3306" user="root" password="123456" />
                </writeHost>
        </dataHost>
</mycat:schema>

shell> more conf/rule.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:rule SYSTEM "rule.dtd">
<mycat:rule xmlns:mycat="http://org.opencloudb/">
        <tableRule name="rule1">
                <rule>
                        <columns>id</columns>
                        <algorithm>func1</algorithm>
                </rule>
        </tableRule>

        <function name="func1" class="org.opencloudb.route.function.PartitionByLong">
                <property name="partitionCount">8</property>
                <property name="partitionLength">128</property>
        </function>
</mycat:rule>

server.xml的user定義了客戶端連接mycat使用的用戶驗證
schema.xml的user是mycat連接數據庫使用的用戶
shell> more conf/server.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://org.opencloudb/">
        <system>
        <property name="defaultSqlParser">druidparser</property>
        </system>
        <user name="test">
                <property name="password">test</property>
                <property name="schemas">test</property>
        </user>
</mycat:server>

啟動測試mycat

查看wrapper.log,查看啟動是否成功
shell> /usr/local/mycat/bin/mycat start

通過mycat連接數據庫
shell> mysql -h 10.106.58.174 -P8066  -u test -p
mysql> select @@hostname;
+------------+
| @@hostname |
+------------+
| mysql178   |
+------------+
1 row in set (0.13 sec)

mysql> create table user(id int primary key,name varchar(100));
Query OK, 0 rows affected (0.13 sec)

mysql> insert into user(id,name) values(1,'xiaoming');
Query OK, 1 row affected (0.07 sec)

查詢從庫
mysql> select @@hostname; select * from test.user;
+------------+
| @@hostname |
+------------+
| mysql179   |
+------------+
1 row in set (0.00 sec)

+----+----------+
| id | name     |
+----+----------+
|  1 | xiaoming |
+----+----------+
1 row in set (0.00 sec)

測試讀寫分離

mycat提供了幾種請求負載均衡分發(fā)形式,通過定義dataHost標簽的balance屬性來修改
balance=0,不開啟讀寫分離機制,所有讀寫操作都發(fā)送到當前可用的writeHost上
balance=1,全部的readHost和stand by writeHost參與select語句的負載均衡,如雙主雙從模式,M2、S1、S2都分發(fā)請求
balance=2,所有讀操作隨機在writeHost和readHost上分發(fā)
balance=3,所有讀請求隨機的分發(fā)到writeHost上對應的readHost上執(zhí)行,writeHost不承擔讀壓力。(balance=3只支持mycat1.4以上版本)

設置balance=1并將log4j修改為debug模式,觀察執(zhí)行結果。

執(zhí)行寫入操作,可以看出分發(fā)到writeHost
mysql> insert into test.user(id,name) values(2,'xiaoli');

MyCAT如何安裝使用

執(zhí)行查詢操作,可以看出分發(fā)到readHost
mysql> select * from test.user where id = 2;

MyCAT如何安裝使用

測試故障切換

mycat通過dataHost標簽的writeType和switchType來定義故障切換方式。
writeType=0,表示所有寫都發(fā)送到配置的第一個writeHost上,第一個掛了切換到第二個writeHost上,重啟后以切換后的為準,切換記錄在conf/dnindex.properties
writeType=1,表示所有寫都隨機發(fā)送到配置的writeHost上,mycat1.5以上已廢棄不推薦。
switchType=-1,表示不自動切換
switchType=1,默認值,表示自動切換
switchType=2,基于MySQL主從同步的狀態(tài)決定是否切換,心跳語句為show slave status。
switchType=3,基于galaru cluster的切換機制(合適集群),mycat1.4以上支持,心跳語句為show status like 'wsrep%'。

修改switchType=2,writeType=0,心跳語show slave status

關閉Master
shell> service mysql stop

MyCAT如何安裝使用

通過mycat執(zhí)行插入操作,發(fā)現請求分發(fā)到第二個writeHost上
mysql> insert into test.user values(3,'xiaowang');
Query OK, 1 row affected (0.04 sec)

MyCAT如何安裝使用

重新啟動原Master
shell> service mysql start

查看當前寫入節(jié)點,0表示第一個,1表示第二個
shell> more conf/dnindex.properties
#update
#Fri Mar 04 15:51:39 CST 2016
cluster1=1

通過mycat寫入數據
mysql> insert into test.user values(4,'xiaozheng');
Query OK, 1 row affected (0.04 sec)

mysql> select * from test.user where id = 4;
+----+-----------+
| id | name      |
+----+-----------+
|  4 | xiaozheng |
+----+-----------+
1 row in set (0.01 sec)

查看主庫數據
mysql> select * from test.user;
+----+----------+
| id | name     |
+----+----------+
|  1 | xiaoming |
|  2 | xiaoli   |
+----+----------+
2 rows in set (0.00 sec)

查看從庫數據
mysql> select * from test.user;
+----+-----------+
| id | name      |
+----+-----------+
|  1 | xiaoming  |
|  2 | xiaoli    |
|  3 | xiaowang  |
|  4 | xiaozheng |
+----+-----------+
4 rows in set (0.00 sec)

當原主庫恢復之后,mycat并沒有切換回第一個寫入節(jié)點,而是需要重新配置主從狀態(tài)。mycat的故障切換不會同步主從binlog差異數據,不能完整的保證數據一致性,而且沒有記錄切換后的writeHost提供服務時的binlog位置,其他從庫指定新主庫時,需要手工備份完整的數據,可考慮與MHA結合使用。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“MyCAT如何安裝使用”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!

當前名稱:MyCAT如何安裝使用
網頁鏈接:http://jinyejixie.com/article10/ggesgo.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供App設計、網站收錄、商城網站、做網站、App開發(fā)、面包屑導航

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網站托管運營
清涧县| 新疆| 宁化县| 合江县| 巴中市| 嘉祥县| 都匀市| 灵璧县| 鹿邑县| 水城县| 城固县| 沁源县| 胶南市| 濮阳市| 栖霞市| 松溪县| 太仆寺旗| 托克托县| 罗城| 大方县| 海口市| 昌邑市| 武城县| 嵊泗县| 囊谦县| 南阳市| 镇远县| 天门市| 嘉黎县| 福州市| 临猗县| 青州市| 麟游县| 沽源县| 蒙阴县| 利川市| 徐闻县| 南江县| 清远市| 淄博市| 安泽县|