3.3.3 配置
1). schema.xml
在schema.xml中配置逻辑库、逻辑表、数据节点、节点主机等相关信息。具体的配置如下:
<mycat:schema xmlns:mycat="http://io.mycat/"> | |
<schema name="DB01" checkSQLschema="true" sqlMaxLimit="100"> | |
<table name="TB_ORDER" dataNode="dn1,dn2,dn3" rule="auto-sharding-long" | |
/> | |
</schema> | |
<dataNode name="dn1" dataHost="dhost1" database="db01" /> | |
<dataNode name="dn2" dataHost="dhost2" database="db01" /> | |
<dataNode name="dn3" dataHost="dhost3" database="db01" /> | |
<dataHost name="dhost1" maxCon="1000" minCon="10" balance="0" | |
writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" | |
slaveThreshold="100"> | |
<heartbeat>select user()</heartbeat> | |
<writeHost host="master" url="jdbc:mysql://192.168.200.210:3306? | |
useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8" | |
user="root" password="1234" /> | |
</dataHost> | |
<dataHost name="dhost2" maxCon="1000" minCon="10" balance="0" | |
writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" | |
slaveThreshold="100"> | |
<heartbeat>select user()</heartbeat> | |
<writeHost host="master" url="jdbc:mysql://192.168.200.213:3306? | |
useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8" | |
user="root" password="1234" /> | |
</dataHost> | |
<dataHost name="dhost3" maxCon="1000" minCon="10" balance="0" | |
writeType="0" dbType="mysql" dbDriver="jdbc" switchType="1" | |
slaveThreshold="100"> | |
<heartbeat>select user()</heartbeat> | |
<writeHost host="master" url="jdbc:mysql://192.168.200.214:3306? | |
useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8" | |
user="root" password="1234" /> | |
</dataHost> | |
</mycat:schema> |
2). server.xml
需要在server.xml中配置用户名、密码,以及用户的访问权限信息,具体的配置如下:
<user name="root" defaultAccount="true"> | |
<property name="password">123456</property> | |
<property name="schemas">DB01</property> | |
<!-- 表级 DML 权限设置 --> | |
<!-- | |
<privileges check="true"> | |
<schema name="DB01" dml="0110" > | |
<table name="TB_ORDER" dml="1110"></table> | |
</schema> | |
</privileges> | |
--> | |
</user> | |
<user name="user"> | |
<property name="password">123456</property> | |
<property name="schemas">DB01</property> | |
<property name="readOnly">true</property> | |
</user> |
上述的配置表示,定义了两个用户 root 和 user ,这两个用户都可以访问 DB01 这个逻辑库,访问密码都是123456,但是root用户访问DB01逻辑库,既可以读,又可以写,但是 user用户访问DB01逻辑库是只读的。