日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mycat快速体验(转)

發布時間:2025/6/15 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mycat快速体验(转) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

橫空出世的MyCat截至到2015年4月,保守估計已經有超過60個項目在使用,主要應用在電信領域、互聯網項目,大部分是交易和管理系統,少量是信息系統。比較大的系統中,數據規模單表單月30億。本人也初步嘗鮮,體驗了一把,見以下描述,供大家參考。

MyCAT 是使用 JAVA 語言進行編寫開發,使用前需要先安裝 JAVA 運行環境(JRE),由于 MyCAT 中使用

了 JDK7 中的一些特性,所以要求必須在 JDK7 以上的版本上運行。

?

https://github.com/MyCATApache/

注:MyCAT 相關源碼、文檔都可以在此地址下進行下載。

?

windows下可以下載Mycat-server-1.4-RELEASE-yyyymmddxxxx-win.tar

?

今天體驗的是在windows 10系統下。

體驗的版本:Mycat-server-1.4-release-20151019230038-win

?

解壓后的文件目錄:

|-mycat

|----bin ? ? //啟動mycat

|----catlet

|----conf ? //配置文件

|----lib ? ? //jar存放目錄

|----logs ?//日志文件

?

體驗步驟

1、首先在本地的mysql建兩個空數據庫 ?mycat1,mycat2。

2、修改conf目錄下面的 schema.xml配置文件。

Xml代碼 ?
  • <?xml?version="1.0"?>??
  • <!DOCTYPE?mycat:schema?SYSTEM?"schema.dtd">??
  • <mycat:schema?xmlns:mycat="http://org.opencloudb/">??
  • ??
  • ????<schema?name="TESTDB"?checkSQLschema="false"?sqlMaxLimit="100">??
  • ??
  • ????????<table?name="employee"?primaryKey="ID"?dataNode="dn1,dn2"??
  • ????????????rule="sharding-by-intfile"?/>??
  • ????</schema>??
  • ????<dataNode?name="dn1"?dataHost="localhost"?database="mycat1"?/>??
  • ????<dataNode?name="dn2"?dataHost="localhost"?database="mycat2"?/>??
  • ????<dataHost?name="localhost"?maxCon="1000"?minCon="10"?balance="0"??
  • ????????writeType="0"?dbType="mysql"?dbDriver="native"?switchType="1"??slaveThreshold="100">??
  • ????????<heartbeat>select?user()</heartbeat>??
  • ????????<writeHost?host="hostM1"?url="localhost:3306"?user="root"??
  • ????????????password="11aa..123">??
  • ????????????<!--?can?have?multi?read?hosts?-->??
  • ????????</writeHost>??
  • ????</dataHost>??
  • ??
  • </mycat:schema>??
  • <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://org.opencloudb/"><schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100"><table name="employee" primaryKey="ID" dataNode="dn1,dn2"rule="sharding-by-intfile" /></schema><dataNode name="dn1" dataHost="localhost" database="mycat1" /><dataNode name="dn2" dataHost="localhost" database="mycat2" /><dataHost name="localhost" maxCon="1000" minCon="10" balance="0"writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"><heartbeat>select user()</heartbeat><writeHost host="hostM1" url="localhost:3306" user="root"password="11aa..123"><!-- can have multi read hosts --></writeHost></dataHost></mycat:schema>

    ?

    3、修改conf目錄下面的 server.xml配置文件:

    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">TESTDB</property>??
  • ????</user>??
  • ??
  • </mycat:server>??
  • <?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">TESTDB</property></user></mycat:server>

    ?

    server.xml配置文件用來配置mycat對方的數據庫連接用戶名密碼,啟動成功后可以用navicat連接。

    ?

    ? ?3、進入bin目錄。

    ? ? ? ? ?

    ? ?看命名的意思startup_nowrap.bat是不注冊開機自動啟動服務的,準備選擇startup_nowrap.bat來啟動mycat。但是雙擊startup_nowrap.bat 之后,運行界面一閃而過。logs中也沒有相關的錯誤信息,改為從dos環境啟動。

    ? ?輸錯錯誤信息:



    ?

    ?

    講bat文件中的啟動配置修改為:

    Python代碼 ?
  • "%JAVA_CMD%"?-server?-Xms128M?-Xmx256M?-XX:MaxPermSize=64M??-XX:+AggressiveOpts?-XX:MaxDirectMemorySize=128M?-DMYCAT_HOME=%MYCAT_HOME%?-cp?"..\conf;..\lib\*"?org.opencloudb.MycatStartup??
  • "%JAVA_CMD%" -server -Xms128M -Xmx256M -XX:MaxPermSize=64M -XX:+AggressiveOpts -XX:MaxDirectMemorySize=128M -DMYCAT_HOME=%MYCAT_HOME% -cp "..\conf;..\lib\*" org.opencloudb.MycatStartup

    ?

    再次啟動程序成功。

    ?

    Logs代碼 ?
  • 11/17?17:16:45.689???INFO?[main]?(MycatServer.java:195)?-===============================================??
  • 11/17?17:16:45.689???INFO?[main]?(MycatServer.java:196)?-MyCat?is?ready?to?startup?...??
  • 11/17?17:16:45.689???INFO?[main]?(MycatServer.java:206)?-Startup?processors?...,total?processors:8,aio?thread?pool?size:16??????
  • ?each?process?allocated?socket?buffer?pool??bytes?,buffer?chunk?size:4096??buffer?pool's?capacity(buferPool/bufferChunk)?is:8000??
  • 11/17?17:16:45.689???INFO?[main]?(MycatServer.java:207)?-sysconfig?params:SystemConfig?[processorBufferLocalPercent=100,?frontSocketSoRcvbuf=1048576,?frontSocketSoSndbuf=4194304,?backSocketSoRcvbuf=4194304,?backSocketSoSndbuf=1048576,?frontSocketNoDelay=1,?backSocketNoDelay=1,?maxStringLiteralLength=65535,?frontWriteQueueSize=2048,?bindIp=0.0.0.0,?serverPort=8066,?managerPort=9066,?charset=utf8,?processors=8,?processorExecutor=16,?timerExecutor=2,?managerExecutor=2,?idleTimeout=1800000,?catletClassCheckSeconds=60,?sqlExecuteTimeout=300,?processorCheckPeriod=1000,?dataNodeIdleCheckPeriod=300000,?dataNodeHeartbeatPeriod=10000,?clusterHeartbeatUser=_HEARTBEAT_USER_,?clusterHeartbeatPass=_HEARTBEAT_PASS_,?clusterHeartbeatPeriod=5000,?clusterHeartbeatTimeout=10000,?clusterHeartbeatRetry=10,?txIsolation=3,?parserCommentVersion=50148,?sqlRecordCount=10,?processorBufferPool=32768000,?processorBufferChunk=4096,?defaultMaxLimit=100,?sequnceHandlerType=0,?sqlInterceptor=org.opencloudb.interceptor.impl.DefaultSqlInterceptor,?sqlInterceptorType=select,?sqlInterceptorFile=D:\mycat_study\Mycat-server-1.4-release-20151019230038-win\mycat\bin/logs/sql.txt,?mutiNodeLimitType=0,?mutiNodePatchSize=100,?defaultSqlParser=druidparser,?usingAIO=0,?packetHeaderSize=4,?maxPacketSize=16777216,?mycatNodeId=1]??
  • 11/17?17:16:45.720???INFO?[main]?(MycatServer.java:266)?-using?nio?network?handler???
  • 11/17?17:16:45.751???INFO?[main]?(MycatServer.java:284)?-$_MyCatManager?is?started?and?listening?on?9066??
  • 11/17?17:16:45.751???INFO?[main]?(MycatServer.java:288)?-$_MyCatServer?is?started?and?listening?on?8066??
  • 11/17 17:16:45.689 INFO [main] (MycatServer.java:195) -=============================================== 11/17 17:16:45.689 INFO [main] (MycatServer.java:196) -MyCat is ready to startup ... 11/17 17:16:45.689 INFO [main] (MycatServer.java:206) -Startup processors ...,total processors:8,aio thread pool size:16 each process allocated socket buffer pool bytes ,buffer chunk size:4096 buffer pool's capacity(buferPool/bufferChunk) is:8000 11/17 17:16:45.689 INFO [main] (MycatServer.java:207) -sysconfig params:SystemConfig [processorBufferLocalPercent=100, frontSocketSoRcvbuf=1048576, frontSocketSoSndbuf=4194304, backSocketSoRcvbuf=4194304, backSocketSoSndbuf=1048576, frontSocketNoDelay=1, backSocketNoDelay=1, maxStringLiteralLength=65535, frontWriteQueueSize=2048, bindIp=0.0.0.0, serverPort=8066, managerPort=9066, charset=utf8, processors=8, processorExecutor=16, timerExecutor=2, managerExecutor=2, idleTimeout=1800000, catletClassCheckSeconds=60, sqlExecuteTimeout=300, processorCheckPeriod=1000, dataNodeIdleCheckPeriod=300000, dataNodeHeartbeatPeriod=10000, clusterHeartbeatUser=_HEARTBEAT_USER_, clusterHeartbeatPass=_HEARTBEAT_PASS_, clusterHeartbeatPeriod=5000, clusterHeartbeatTimeout=10000, clusterHeartbeatRetry=10, txIsolation=3, parserCommentVersion=50148, sqlRecordCount=10, processorBufferPool=32768000, processorBufferChunk=4096, defaultMaxLimit=100, sequnceHandlerType=0, sqlInterceptor=org.opencloudb.interceptor.impl.DefaultSqlInterceptor, sqlInterceptorType=select, sqlInterceptorFile=D:\mycat_study\Mycat-server-1.4-release-20151019230038-win\mycat\bin/logs/sql.txt, mutiNodeLimitType=0, mutiNodePatchSize=100, defaultSqlParser=druidparser, usingAIO=0, packetHeaderSize=4, maxPacketSize=16777216, mycatNodeId=1] 11/17 17:16:45.720 INFO [main] (MycatServer.java:266) -using nio network handler 11/17 17:16:45.751 INFO [main] (MycatServer.java:284) -$_MyCatManager is started and listening on 9066 11/17 17:16:45.751 INFO [main] (MycatServer.java:288) -$_MyCatServer is started and listening on 8066

    ?可以看到mycat監聽的端口號,使用navicat連接mycat數據庫。



    ?

    ?

    連接成功可以看到schema.xml配置的邏輯庫。


    ?

    創建表

    Sql代碼 ?
  • CREATE?TABLE?`employee`?(??
  • ??`ID`?int(11)?NOT?NULL,??
  • ??`NAME`?varchar(100)?default?NULL,??
  • ??`SHARDING_ID`?int(11)?NOT?NULL,??
  • ??PRIMARY?KEY??(`ID`)??
  • )??
  • CREATE TABLE `employee` (`ID` int(11) NOT NULL,`NAME` varchar(100) default NULL,`SHARDING_ID` int(11) NOT NULL,PRIMARY KEY (`ID`) )

    ?插入數據:

    Sql代碼 ?
  • INSERT?INTO?`employee`?VALUES?('1',?'leader?us',?'10000');??
  • INSERT?INTO?`employee`?VALUES?('2',?'mycat',?'10000');??
  • INSERT?INTO?`employee`?VALUES?('3',?'mydog',?'10000');??
  • INSERT?INTO?`employee`?VALUES?('4',?'mypig',?'10000');??
  • INSERT INTO `employee` VALUES ('1', 'leader us', '10000'); INSERT INTO `employee` VALUES ('2', 'mycat', '10000'); INSERT INTO `employee` VALUES ('3', 'mydog', '10000'); INSERT INTO `employee` VALUES ('4', 'mypig', '10000');

    ?
    ? ?使用navicat可以看到插入的四條記錄。

    分別打開mycat1 ?,mycat2數據庫

    employee表中分別有1,3;2,4;兩條記錄 ?表明mycat分片表成功

    ? ? ? ? ?

    ?

    ?

    ?

    ?

    總結

    以上是生活随笔為你收集整理的mycat快速体验(转)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。