windows下mycat的安装和简单使用

1、下载windows下的mycat安装包
2、保证你的电脑里已经存在jdk和mysql
3、在你心仪的目录下解压mycat安装包,打开conf文件夹,里面含有许多配置文件
4、更改配置文件
再更改之前首先分析几个相关配置文件的内容和作用
1)server.xml是Mycat服务器参数调整和用户授权的配置文件,
可以配置system、firewall、user、cluster四个部分

<mycat:server xmlns:mycat="http://io.mycat/">
	<system>
 	<property name="serverPort">8066</property>
	<property name="defaultSqlParser">druidparser</property>
</system>
<user name="root">
	<property name="password">123</property>
	<property name="schemas">TESTDB</property>

如上所示:最简单的配置主要包含了mycat的端口号、用户名、密码,以及默认的库TESDB。

2)schema.xml是逻辑库定义和表以及分片定义的配置文件,
schema标签、table标签、childTable标签、dataNode标签、dataHost标签
a:schema标签用于定义MyCat实例中的逻辑库,MyCat可以有多个逻辑库,每个逻辑库都有自己的相关配置。可以使用schema标签来划分这些不同的逻辑库。如果不配置schema标签,所有的表配置,会属于同一个默认的逻辑库。
b:Table标签定义了MyCat中的逻辑表,所有需要拆分的表都需要在这个标签中定义。
c、childTable 标签用于定义 E-R 分片的子表。通过标签上的属性与父表进行关联。
d、用于配置该逻辑库默认的分片
e、定义后端的数据库主机

<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
		<table name="hotnews" primaryKey="ID" autoIncrement="true" dataNode="dn1,dn2,dn3"
			   rule="mod-long" />
	    <table name="murmur_test" primaryKey="ID" autoIncrement="true" dataNode="dn1,dn2,dn3"
			   rule="sharding-by-murmur" />
		<!-- <table name="dual" primaryKey="ID" dataNode="dnx,dnoracle2" type="global"
			needAddLimit="false"/> <table name="worker" primaryKey="ID" dataNode="jdbc_dn1,jdbc_dn2,jdbc_dn3"
			rule="mod-long" /> -->
		<table name="employee" primaryKey="ID" dataNode="dn1,dn2"
			   rule="sharding-by-intfile" />   
		<table name="bookinfo" primaryKey="ID" dataNode="dn1,dn2,dn3"
			   rule="sharding-by-murmur" />   
		<table name="customer" primaryKey="ID" dataNode="dn1,dn2"
			   rule="sharding-by-intfile">
			<childTable name="orders" primaryKey="ID" joinKey="customer_id"
						parentKey="id">
				<childTable name="order_items" joinKey="order_id"
							parentKey="id" />
			</childTable>
			<childTable name="customer_addr" primaryKey="ID" joinKey="customer_id"
						parentKey="id" />				
		</table>

以上部分是配置了所需的逻辑表,以及每个表的分片和分片规则。

</schema>
	<dataNode name="dn1" dataHost="localhost1" database="db1" />
	<dataNode name="dn2" dataHost="localhost1" database="db2" />
	<dataNode name="dn3" dataHost="localhost1" database="db3" />
	
	<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
			  writeType="0" dbType="mysql" dbDriver="native" switchType="2"  slaveThreshold="100">
		<heartbeat>select user()</heartbeat>
		<!-- can have multi write hosts -->
		<writeHost host="hostM1" url="localhost:3307" user="root"
				   password="root">
			<!-- can have multi read hosts -->
		</writeHost>

以上配置定义了mycat后端的物理数据库的ip地址、端口、用户和密码。balance="0"代表没有设置读写分离,
还配置了每个物理数据库上的分片名称。

3)rule.xml里面就定义了我们对表进行拆分所涉及到的规则定义。我们可以灵活的对表使用不同的分片算法,或者对表使用相同的算法但具体的参数不同。这个文件里面主要有tableRule和function这两个标签。在具体使用过程中可以按照需求添加tableRule和function。
不用修改

5、用命令行进入mycat安装目录的bin文件夹,执行mycat install,安装mycat,
再执行mycat start,打开mycat服务

6、此时你可以用命令行
mysql -h -uroot -p -P8066
或者用navicat直接连接mycat和mysql
在这里插入图片描述

发布了19 篇原创文章 · 获赞 2 · 访问量 1228

猜你喜欢

转载自blog.csdn.net/weixin_38377637/article/details/100550686