




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄1Mycat概述12讀寫(xiě)分離32.1讀寫(xiě)分離定義32.2優(yōu)缺點(diǎn)43安裝環(huán)境44Mycat安裝配置44.1首先確認(rèn)Mycat服務(wù)器網(wǎng)絡(luò)是否聯(lián)通44.2檢查JAVA版本54.3下載Mycat安裝包54.4解壓縮安裝包54.5增加Mycat相關(guān)的環(huán)境變量54.6修改Mycat配置文件64.6.1修改server.xml64.6.2修改schema.xml64.7啟動(dòng)Mycat74.8連接Mycat74.9查看Mycat邏輯庫(kù)84.10關(guān)閉Mycat服務(wù)85讀寫(xiě)分離驗(yàn)證81 Mycat概述Mycat從定義和分類來(lái)看,它是一個(gè)開(kāi)源的分布式數(shù)據(jù)庫(kù)系統(tǒng),是一個(gè)實(shí)現(xiàn)了MySQL協(xié)議的服務(wù)器,前端用戶可以把
2、它看作是一個(gè)數(shù)據(jù)庫(kù)代理,用MySQL客戶端工具和命令行訪問(wèn),而其后端可以用MySQL原生協(xié)議與多個(gè)MySQL服務(wù)器通信,也可以用JDBC協(xié)議與大多數(shù)主流數(shù)據(jù)庫(kù)服務(wù)器通信,其核心功能是分表分庫(kù),即將一個(gè)大表水平分割為N個(gè)小表,存儲(chǔ)在后端MySQL服務(wù)器里或者其他數(shù)據(jù)庫(kù)里。MyCat發(fā)展到目前的版本,已經(jīng)不是一個(gè)單純的MySQL代理了,它的后端可以支持MySQL、SQL Server、Oracle、DB2、PostgreSQL等主流數(shù)據(jù)庫(kù),也支持MongoDB這種新型NoSQL方式的存儲(chǔ),未來(lái)還會(huì)支持更多類型的存儲(chǔ)。而在最終用戶看來(lái),無(wú)論是那種存儲(chǔ)方式,在MyCat里,都是一個(gè)傳統(tǒng)的數(shù)據(jù)庫(kù)表,支持
3、標(biāo)準(zhǔn)的SQL語(yǔ)句進(jìn)行數(shù)據(jù)的操作,這樣一來(lái),對(duì)前端業(yè)務(wù)系統(tǒng)來(lái)說(shuō),可以大幅降低開(kāi)發(fā)難度,提升開(kāi)發(fā)速度。Mycat架構(gòu)圖Mycat支持基于MySQL主從復(fù)制狀態(tài)的高級(jí)讀寫(xiě)分離控制機(jī)制2 讀寫(xiě)分離2.1 讀寫(xiě)分離定義為了確保數(shù)據(jù)庫(kù)產(chǎn)品的穩(wěn)定性,很多數(shù)據(jù)庫(kù)擁有雙機(jī)熱備功能。也就是,第一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器,是對(duì)外提供增刪改查業(yè)務(wù)的生產(chǎn)服務(wù)器;第二臺(tái)數(shù)據(jù)庫(kù)服務(wù)器,僅僅接收來(lái)自第一臺(tái)服務(wù)器的備份數(shù)據(jù)。一般來(lái)說(shuō),為了配置方便,以及穩(wěn)定性,這兩臺(tái)數(shù)據(jù)庫(kù)服務(wù)器,都用的是相同的配置。在實(shí)際運(yùn)行中,第一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器的壓力,遠(yuǎn)遠(yuǎn)大于第二臺(tái)數(shù)據(jù)庫(kù)服務(wù)器。因此,很多人希望合理利用第二臺(tái)數(shù)據(jù)庫(kù)服務(wù)器的空閑資源。從數(shù)據(jù)庫(kù)的基本業(yè)務(wù)
4、來(lái)看,數(shù)據(jù)庫(kù)的操作無(wú)非就是增刪改查這4個(gè)操作。但對(duì)于“增刪改”這三個(gè)操作,如果是雙機(jī)熱備的環(huán)境中做,一臺(tái)機(jī)器做了這三個(gè)操作的某一個(gè)之后,需要立即將這個(gè)操作,同步到另一臺(tái)服務(wù)器上。出于這個(gè)原因,第二臺(tái)備用的服務(wù)器,就只做了查詢操作。進(jìn)一步,為了降低第一臺(tái)服務(wù)器的壓力,干脆就把查詢操作全部丟給第二臺(tái)數(shù)據(jù)庫(kù)服務(wù)器去做,第一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器就只做增刪改了。2.2 優(yōu)缺點(diǎn)優(yōu)點(diǎn):合理利用從數(shù)據(jù)庫(kù)服務(wù)器的空閑資源。缺點(diǎn):本來(lái)第二臺(tái)數(shù)據(jù)庫(kù)服務(wù)器,是用來(lái)做熱備的,它就應(yīng)該在一個(gè)壓力非常小的環(huán)境下,保證運(yùn)行的穩(wěn)定性。而讀寫(xiě)分離,卻增加了它的壓力,也就增加了不穩(wěn)定性。因此,讀寫(xiě)分離,實(shí)質(zhì)上是一個(gè)在資金比較缺乏,但又需
5、要保證數(shù)據(jù)安全的需求下,在雙機(jī)熱備方案上,做出的一種折中的擴(kuò)展方案。3 安裝環(huán)境MySQL主庫(kù)MySQL從庫(kù)Mycat服務(wù)器操作系統(tǒng)Centos6.5 64位Centos6.5 64位Centos6.5 64位主機(jī)名wyg001wyg002wyg003IP313233數(shù)據(jù)庫(kù)版本MySQL 5.6.23MySQL 5.6.23MySQL 5.6.23說(shuō)明: 1. Mycat由Java語(yǔ)言開(kāi)發(fā),運(yùn)行環(huán)境為JDK1.7及以上的版本,Mycat服務(wù)器需要安裝JDB1.7或以上版本;2. MySQL主庫(kù)和從庫(kù)MySQL數(shù)據(jù)庫(kù)服務(wù)已經(jīng)開(kāi)啟并
6、且開(kāi)啟主從同步;3. 建議Mycat服務(wù)器本地有一個(gè)MySQL Server,若沒(méi)有,建議安裝一個(gè);4 Mycat安裝配置4.1 首先確認(rèn)Mycat服務(wù)器網(wǎng)絡(luò)是否聯(lián)通用IP地址為33的主機(jī)ping31的機(jī)器,其結(jié)果如下:rootwyg003 conf# ping 31PING 31 (31) 56(84) bytes of data.64 bytes from 31: icmp_seq=1 ttl=64 time=1.93 ms64 bytes from 192.
7、168.0.131: icmp_seq=2 ttl=64 time=0.468 ms64 bytes from 31: icmp_seq=3 ttl=64 time=0.539 ms用IP地址為33的主機(jī)ping32的機(jī)器,其結(jié)果如下:rootwyg003 conf# ping 32PING 32 (32) 56(84) bytes of data.64 bytes from 32: icmp_seq=1 ttl=64 time=7.97 m
8、s64 bytes from 32: icmp_seq=2 ttl=64 time=0.448 ms64 bytes from 32: icmp_seq=3 ttl=64 time=0.446 ms說(shuō)明:網(wǎng)絡(luò)不通的話請(qǐng)先檢查網(wǎng)絡(luò)。4.2 檢查JAVA版本rootwyg003 bin# java -versionjava version 1.7.0_67Java(TM) SE Runtime Environment (build 1.7.0_67-b01)Java HotSpot(TM) 64-Bit Server VM (build 24.65-b0
9、4, mixed mode)說(shuō)明:Mycat由Java語(yǔ)言開(kāi)發(fā),運(yùn)行環(huán)境為JDK1.7及以上的版本,Mycat服務(wù)器需要安裝JDB1.7或以上版本;如果版本過(guò)低請(qǐng)下載JDK1.7或以上版本安裝;4.3 下載Mycat安裝包這里下載的版本是Mycat 1.4-RELEASE版;下載完成后通過(guò)FTP或傳輸軟件將安裝包上傳到服務(wù)器目錄/usr/local/下。4.4 解壓縮安裝包rootwyg003 local# cd /usr/local/rootwyg003 local# tar zxvf Mycat-Server-1.4-RC-Linux-RW-20150724.tar.gzrootwyg00
10、3 local# mv Mycat-Server-1.4-RC-Linux-RW-20150724 Mycat說(shuō)明:安裝包已經(jīng)提前上傳到目錄/usr/local/下,修改解壓后文件夾名為Mycat4.5 增加Mycat相關(guān)的環(huán)境變量rootwyg003 Mycat# cdrootwyg003 # vi .bash_profileexport MYCAT_HOME=/usr/local/Mycatrootwyg003 #source .bash_profile說(shuō)明:設(shè)置MYCAT_HOME目錄;source 命令使之立即生效;4.6 修改Mycat配置文件4.6.1 修改server.xmlro
11、otwyg003 conf# cd /usr/local/Mycat/conf/rootwyg003 conf# vi server.xml !- 32 32 8066 9066 - test TESTDB 說(shuō)明:進(jìn)入/usr/local/Mycat/conf/目錄修改,主要配置的是Mycat的用戶名和密碼,Mycat的用戶名和密碼和MySQL的用戶名密碼是分開(kāi)的,應(yīng)用連接Mycat就用這個(gè)用戶名和密碼。邏輯庫(kù)TESTDB,用戶名test,密碼test;4.6.2 修改schema.xmlrootwyg003 conf# cd /usr/local/Mycat/conf/rootwyg003
12、conf# vi schema.xml select user() 說(shuō)明:進(jìn)入/usr/local/Mycat/conf/目錄修改;主要配置主從庫(kù)的數(shù)據(jù)庫(kù)連接地址信息; schema name=TESTDB對(duì)應(yīng)server.xml配置的Mycat邏輯庫(kù)名稱;屬性設(shè)置balance =1代表全部的readHost與stand by writeHost參與select語(yǔ)句的負(fù)載均衡; witchType=2代表基于MYSQL主從同步的狀態(tài)決定是否主從切換;4.7 啟動(dòng)Mycatrootwyg003 bin# cd /usr/local/Mycat/bin/rootwyg003 bin# ./myc
13、at startStarting Mycat-server.rootwyg003 bin#說(shuō)明:進(jìn)入目錄/usr/local/Mycat/bin/執(zhí)行;4.8 連接Mycatrootwyg003 bin# mysql -utest -ptest -h -P8066 -DTESTDBWarning: Using a password on the command line interface can be insecure.Reading table information for completion of table and column namesYou can turn
14、 off this feature to get a quicker startup with -AWelcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 9Server version: 5.5.8-mycat-1.4-alpha-20150520235658 MyCat Server (OpenCloundDB)Copyright (c) 2009-2015 Percona LLC and/or its affiliatesCopyright (c) 2000, 2015, Ora
15、cle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type help; or h for help. Type c to clear the current input statement.mysql說(shuō)明:Mycat默認(rèn)使用8066端口;4.9 查看Mycat邏輯庫(kù)mysql show d
16、atabases;+-+| DATABASE |+-+| TESTDB |+-+1 row in set (0.00 sec)mysql select user();+-+| USER() |+-+| test |+-+1 row in set (0.01 sec)mysql說(shuō)明:可以看到我們?cè)趕erver.xml配置的TESTDB邏輯庫(kù)和test用戶;4.10 關(guān)閉Mycat服務(wù)rootwyg003 bin# cd /usr/local/Mycat/bin/rootwyg003 bin# ./mycat stopStopping Mycat-server.Stopped M
17、ycat-server.rootwyg003 bin#說(shuō)明:進(jìn)入/usr/local/Mycat/bin/目錄執(zhí)行;5 讀寫(xiě)分離驗(yàn)證先將日志的debug(log4j.xml文件)模式打開(kāi),執(zhí)行建表插入數(shù)據(jù)操作;mysql create table user(id int not null primary key,name varchar(100);Query OK, 0 rows affected (0.20 sec)mysql insert into user(id,name) values(1,alibaba);Query OK, 1 row affected (0.07 sec)說(shuō)明:執(zhí)
18、行插入記錄操作。rootwyg003 logs# more debug.log12/22 00:51:40.228 DEBUG $_NIOREACTOR-2-RW (NonBlockingSession.java:113) -ServerConnection id=1, schema=TESTDB, host=0:0:0:0:0:0:0:1, user=test,txIsolation=3, autocommit=true, schema=TESTDBinsert into user(id,name) values(1,alibaba), route= 1 - dn1insert into u
19、ser(id,name) values(1,alibaba) rrs 12/22 00:51:40.661 DEBUG $_NIOREACTOR-2-RW (MultiNodeQueryHandler.java:83) -execute mutinode query insert into user(id,name) values(1,alibaba)12/22 00:51:40.694 DEBUG $_NIOREACTOR-2-RW (MultiNodeQueryHandler.java:167) -received ok response ,executeResponse:true from MySQLConnection id=6, lastTime=1437541572734, schema=db1, old shema=db1, borrowed=true, fromSlaveDB=false, threadId=514, charset=gb
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 全國(guó)稅務(wù)稽查規(guī)范
- 關(guān)于領(lǐng)導(dǎo)發(fā)言稿格式【10篇】
- 企業(yè)物資代購(gòu)合同標(biāo)準(zhǔn)文本
- 低價(jià)倒混凝土合同標(biāo)準(zhǔn)文本
- 代理分銷母嬰服務(wù)合同標(biāo)準(zhǔn)文本
- 裝修工程第三方監(jiān)理委托合同2025爭(zhēng)議解決條款
- 開(kāi)展客戶需求分析的月度工作計(jì)劃
- 2025合同免征印花稅政策出臺(tái)
- 光伏項(xiàng)目供貨合同標(biāo)準(zhǔn)文本
- 2025勞動(dòng)合同模板示例
- 廣西壯族自治區(qū)工程造價(jià)綜合定額答疑匯編2022年11月更新
- 中國(guó)教育學(xué)會(huì)教育科研規(guī)劃課題結(jié)題報(bào)告格式(參考)doc
- 機(jī)動(dòng)車駕駛員培訓(xùn)機(jī)構(gòu)質(zhì)量信譽(yù)考核評(píng)分表doc-附件1
- (完整word)蘇教八年級(jí)初二下冊(cè)英語(yǔ)單詞默寫(xiě)表
- 城市規(guī)劃原理課件(完整版)
- 民法案例分析教程(第五版)完整版課件全套ppt教學(xué)教程最全電子教案
- DBJ03-107-2019 房屋建筑和市政工程施工危險(xiǎn)性較大的分部分項(xiàng)工程安全管理規(guī)范
- 國(guó)家電網(wǎng)有限公司十八項(xiàng)電網(wǎng)重大反事故措施(修訂版)
- 夜景照明工程驗(yàn)收標(biāo)準(zhǔn)
- 家長(zhǎng)類型分析及溝通技巧
- 事業(yè)單位固定資產(chǎn)購(gòu)置流程圖
評(píng)論
0/150
提交評(píng)論