cobar

来源:互联网 发布:055 知乎 编辑:程序博客网 时间:2024/05/01 23:10
cobar 编译安装配置笔记
https://github.com/alibaba/cobar
windows下使用eclipse导入cobar项目,eclipse File -> Import -> Git 
https://github.com/alibaba/cobar

linux下:wget https://codeload.github.com/alibaba/cobar/zip/master
F:\mycat>mvn compile
F:\mycat>mvn package

生成压缩包cobar-server-1.2.7.tar.gz,放到linux环境中解压出来,没有logs目录,新建并运行查看目录结构如下:
[html] view plaincopy
  1. [root@XAYQ-Test3 ~]# tree /opt/cobar-server  
  2. /opt/software/cobar-server  
  3. ├── bin  
  4. │   ├── restart.sh  
  5. │   ├── shutdown.sh  
  6. │   ├── startup.bat  
  7. │   └── startup.sh  
  8. ├── conf  
  9. │   ├── log4j.xml                       #日志配置文件,不需要修改  
  10. │   ├── rule.xml                        #mysql路由规则  
  11. │   ├── schema.xml                      #  
  12. │   └── server.xml                      #  
  13. ├── lib  
  14. │   ├── cobar-server-1.2.7.jar  
  15. │   └── log4j-1.2.17.jar  
  16. └── logs  
  17.     ├── alarm.log  
  18.     ├── console.log  
  19.     ├── heartbeat.log  
  20.     ├── stdout.log  
  21.     └── stdout.log.2014-07-10  
    
1.主要修改以下几个文件:rule.xml 
[html] view plaincopy
  1. <!-- 路由规则定义,定义什么表,什么字段,采用什么路由算法 -->  
  2. <tableRule name="rule1">  
  3.   <rule>  
  4.     <columns>id</columns>  
  5.     <algorithm><![CDATA[ func1(${id}) ]]></algorithm>  
  6.   </rule>  
  7. </tableRule>  
  8.   
  9. <!-- 路由函数定义 -->  
  10. <function name="func1" class="com.alibaba.cobar.route.function.PartitionByLong">  
  11.   <property name="partitionCount">2</property>  
  12.   <property name="partitionLength">512</property>  
  13. </function>  
  
2.schema.xml ,定义数据节点
[html] view plaincopy
  1. <cobar:schema xmlns:cobar="http://cobar.alibaba.com/">  
  2.   
  3.   <!-- schema定义 -->  
  4.   <schema name="cppdb" dataNode="cppDb1">  
  5.     <table name="tb2" dataNode="cppDb2,cppDb3" rule="rule1" />  
  6.   </schema>  
  7.   
  8.   <!-- 数据节点定义,数据节点由数据源和其他一些参数组织而成。-->  
  9.   <dataNode name="cppDb1">  
  10.     <property name="dataSource">  
  11.       <dataSourceRef>cppDataSource[0]</dataSourceRef>  
  12.     </property>  
  13.   </dataNode>  
  14.   <dataNode name="cppDb2">  
  15.     <property name="dataSource">  
  16.       <dataSourceRef>cppDataSource[1]</dataSourceRef>  
  17.     </property>  
  18.   </dataNode>  
  19.   <dataNode name="cppDb3">  
  20.     <property name="dataSource">  
  21.       <dataSourceRef>cppDataSource[2]</dataSourceRef>  
  22.     </property>  
  23.   </dataNode>  
  24.   
  25.   <!-- 数据源定义,数据源是一个具体的后端数据连接的表示。-->  
  26.   <dataSource name="cppDataSource" type="mysql">  
  27.     <property name="location">  
  28.       <location>172.22.14.7:3306/cpp1</location>  
  29.       <location>172.22.14.7:3306/cpp2</location>  
  30.       <location>172.22.14.7:3306/cpp3</location>  
  31.     </property>  
  32.     <property name="user">root</property>  
  33.     <property name="password">root</property>  
  34.     <property name="sqlMode">STRICT_TRANS_TABLES</property>  
  35.   </dataSource>  
  36.   
  37. </cobar:schema>  

3.server.xml,定义cobar对外统一的数据接口。

  <!-- 用户访问定义,用户名、密码、schema等信息。 -->
[html] view plaincopy
  1. <user name="root">  
  2. <property name="password">root</property>  
  3. <property name="schemas">cppdb</property>  
  4. t;/user>  



cobar升级版:mycat,提供了大连的文档,以及源码。
http://code.taobao.org/svn/openclouddb/
0 0
原创粉丝点击