zoukankan      html  css  js  c++  java
  • 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代码  收藏代码
    1. <?xml version="1.0"?>  
    2. <!DOCTYPE mycat:schema SYSTEM "schema.dtd">  
    3. <mycat:schema xmlns:mycat="http://org.opencloudb/">  
    4.   
    5.     <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">  
    6.   
    7.         <table name="employee" primaryKey="ID" dataNode="dn1,dn2"  
    8.             rule="sharding-by-intfile" />  
    9.     </schema>  
    10.     <dataNode name="dn1" dataHost="localhost" database="mycat1" />  
    11.     <dataNode name="dn2" dataHost="localhost" database="mycat2" />  
    12.     <dataHost name="localhost" maxCon="1000" minCon="10" balance="0"  
    13.         writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">  
    14.         <heartbeat>select user()</heartbeat>  
    15.         <writeHost host="hostM1" url="localhost:3306" user="root"  
    16.             password="11aa..123">  
    17.             <!-- can have multi read hosts -->  
    18.         </writeHost>  
    19.     </dataHost>  
    20.   
    21. </mycat:schema>  

     

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

    Xml代码  收藏代码
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <!DOCTYPE mycat:server SYSTEM "server.dtd">  
    3. <mycat:server xmlns:mycat="http://org.opencloudb/">  
    4.     <system>  
    5.     <property name="defaultSqlParser">druidparser</property>  
    6.     </system>  
    7.     <user name="test">  
    8.         <property name="password">test</property>  
    9.         <property name="schemas">TESTDB</property>  
    10.     </user>  
    11.   
    12. </mycat:server>  

     

    server.xml配置文件用来配置mycat对方的数据库连接用户名密码,启动成功后可以用navicat连接。

     

       3、进入bin目录。

             

       看命名的意思startup_nowrap.bat是不注册开机自动启动服务的,准备选择startup_nowrap.bat来启动mycat。但是双击startup_nowrap.bat 之后,运行界面一闪而过。logs中也没有相关的错误信息,改为从dos环境启动。

       输错错误信息:



     

     

    讲bat文件中的启动配置修改为:

    Python代码  收藏代码
    1. "%JAVA_CMD%" -server -Xms128M -Xmx256M -XX:MaxPermSize=64M  -XX:+AggressiveOpts -XX:MaxDirectMemorySize=128M -DMYCAT_HOME=%MYCAT_HOME% -cp "..conf;..lib*" org.opencloudb.MycatStartup  

     

    再次启动程序成功。

     

    Logs代码  收藏代码
    1. 11/17 17:16:45.689   INFO [main] (MycatServer.java:195) -===============================================  
    2. 11/17 17:16:45.689   INFO [main] (MycatServer.java:196) -MyCat is ready to startup ...  
    3. 11/17 17:16:45.689   INFO [main] (MycatServer.java:206) -Startup processors ...,total processors:8,aio thread pool size:16      
    4.  each process allocated socket buffer pool  bytes ,buffer chunk size:4096  buffer pool's capacity(buferPool/bufferChunk) is:8000  
    5. 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_studyMycat-server-1.4-release-20151019230038-winmycatin/logs/sql.txt, mutiNodeLimitType=0, mutiNodePatchSize=100, defaultSqlParser=druidparser, usingAIO=0, packetHeaderSize=4, maxPacketSize=16777216, mycatNodeId=1]  
    6. 11/17 17:16:45.720   INFO [main] (MycatServer.java:266) -using nio network handler   
    7. 11/17 17:16:45.751   INFO [main] (MycatServer.java:284) -$_MyCatManager is started and listening on 9066  
    8. 11/17 17:16:45.751   INFO [main] (MycatServer.java:288) -$_MyCatServer is started and listening on 8066  

     可以看到mycat监听的端口号,使用navicat连接mycat数据库。



     

     

    连接成功可以看到schema.xml配置的逻辑库。


     

    创建表

    Sql代码  收藏代码
    1. CREATE TABLE `employee` (  
    2.   `ID` int(11) NOT NULL,  
    3.   `NAMEvarchar(100) default NULL,  
    4.   `SHARDING_ID` int(11) NOT NULL,  
    5.   PRIMARY KEY  (`ID`)  
    6. )  

     插入数据:

    Sql代码  收藏代码
    1. INSERT INTO `employee` VALUES ('1''leader us''10000');  
    2. INSERT INTO `employee` VALUES ('2''mycat''10000');  
    3. INSERT INTO `employee` VALUES ('3''mydog''10000');  
    4. INSERT INTO `employee` VALUES ('4''mypig''10000');  

     
       使用navicat可以看到插入的四条记录。

    分别打开mycat1  ,mycat2数据库

    employee表中分别有1,3;2,4;两条记录  表明mycat分片表成功

             

     

     

  • 相关阅读:
    git拉取线上新分支拉不下来
    contenteditable属性,让div也可编辑
    给2021做一个小结
    http协议相关面试题
    C# 相对路径 系统路径
    开源数据库全接触-MongoDB,Cassandra,Hypertable,CouchDB,Redis,HBase,Voldemort 等简介
    WebForms,MVC和网页的OAuth / OpenID的支持
    HTTP head 详解
    CAB 文件注册及内部INF 文件说明
    【ECJTU_ACM 11级队员2012年暑假训练赛(8) I Lucky Division】
  • 原文地址:https://www.cnblogs.com/jpfss/p/8194369.html
Copyright © 2011-2022 走看看