MyCat的在windows下的基础使用

为了对数据进行水平切分(分库),将项目集成mycat;

1.下载mycat http://dl.mycat.io/

2.配置:主要是配置4个文件

1)配置环境变量:

配置完毕后,输入命令mycat,出现如下图,表示配置成功;

2)配置系统参数,所有配置均在conf文件下

a.配置运行环境:配置wrapper.conf文件

根据自己的实际java路径配置;

b.设置mycat账号和密码,在server.xml配置

调试方便,关键配置信息


	<user name="sgkj" defaultAccount="true">
		<property name="password">cdutcm@123</property>
		<property name="schemas">mycats</property>
	</user>

c.配置分表:在schema.xml配置

附关键配置:

<dataNode name="dn1" dataHost="localhost1" database="db1" />
	<dataNode name="dn2" dataHost="localhost1" database="db2" />
	<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
			  writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
		<heartbeat>select user()</heartbeat>
		
		<writeHost host="hostS1" url="localhost:3457" user="root"
				   password="root" />
</dataHost>

d.配置路由规则,这里用id为策略,平均分摊到每个数据库

<mycat:schema xmlns:mycat="http://io.mycat/">

	<schema name="mycats" checkSQLschema="false" sqlMaxLimit="100">
		<!-- auto sharding by id (long) -->
		<table name="tb_user" dataNode="dn1,dn2" rule="mod-long" />

	</schema>
	<!-- <dataNode name="dn1$0-743" dataHost="localhost1" database="db$0-743"
		/> -->
	<dataNode name="dn1" dataHost="localhost1" database="db1" />
	<dataNode name="dn2" dataHost="localhost1" database="db2" />
	<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
			  writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
		<heartbeat>select user()</heartbeat>
		<!-- can have multi write hosts -->
		<writeHost host="hostS1" url="localhost:3457" user="sgkj"
				   password="cdutcm@123" />
		<!-- <writeHost host="hostM2" url="localhost:3316" user="root" password="123456"/> -->
	</dataHost>
</mycat:schema>

3.启动mycat;

mycat install 安装;

mycat start 启动服务;

启动服务的时候菜了几个坑,主要是java环境的问题,java8不能启动,后来换成了java7解决的;

4.测试是否安装成功,注意一下,mycat默认启动的端口是8066

driver-class-name: com.mysql.jdbc.Driver.url: jdbc:mysql://localhost:8066/mycats?characterEncoding=utf8&useSSL=false&autoReconnect=true&allowMultiQueries=true
username: root
password: root

向mycat中插入数据后,查看结果,数据被分摊插入到不同的数据库

致谢:参看文献

https://github.com/MyCATApache/Mycat-doc/blob/master/%E5%85%A5%E9%97%A8%E6%8C%87%E5%8D%97/mycat%E5%AE%89%E8%A3%85%E5%85%A5%E9%97%A8(%E4%B8%A4%E8%8A%82%E7%82%B9).md

发布了53 篇原创文章 · 获赞 3 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Min_Chander/article/details/102968636