自己搭了一个运用Mycat中间件搭建了一个读写分离的demo,昨晚还在奋战当中,因为连接mycat的时候老是报错:No Mycat DataBases selected.尝试了很多的方法,然后还是没有解决。无奈!今早上班来公司,检查了一遍schema.xml中的配置,发现没有问题,启动mycat,连接,不知为何,竟然登录上去了
环境:Windows 10 jdk 8 mysql客户端Navicat
使用mycat前确保已经安装好jdk7以上版本以及mysql,环境变量正确。
1.到Mycat的官网http://www.mycat.io/下载Mycat-server
2.解压Mycat到一个非中文命名的文件夹,解压出来的文件是这样的:
关于各个文件夹的意义,可以看一下Mycat权威指南。
3.配置schema.xml
这里是配置逻辑数据库,可以这样理解:可以把mycat看成和mysql一样的数据库,mycat是把所有节点的数据库整合起来了。
这里的dn1,dn3和上面schema中的dataNode属性必须一致,这样才能构成映射。
我这里是配置第一个localhost1,标签中name属性的值必须和上面dataNode标签中的dataHost属性值一致,映射。
writeHost中的标签属性就是连接mysql的连接信息,连接ip 端口 用户名以及密码 设为主写,配置了一台从读服务器,当主服务器挂掉后,由于我配置了hostM2,所以会暂替hostM1的位置,不至于在主挂掉后服务停止。
下面是我配置的localhost2:
用109这台服务器作为第二个节点,这里只是简单的配置一下。和上面是一样的。
4.server.xml配置
这里直接用原来的,没有改,因为我schema.xml中也是用TESTDB这个数据库,说明一下,name属性schema的值TESTDB必须和schema.xml中schema标签的name属性值一致。逻辑数据库可以配置多个。
这里是配置你登录mycat的时候的用户名和密码,当你连接的时候就是用这里配置的才能连上去。它还有其他的属性,可以看权威指南。
启动mycat前确保已经建好对应的表,然后就是启动,在mycat解压文件中的bin文件夹,双击启动。启动正确会看到这个标志:
如果出现异常,可以查看logs文件夹下的日志信息。
5.使用Navicat连接mycat,和平时连接mysql是一样的
我的mycat是安装在本机,用户名和密码就用刚才server.xml中配置的,端口是8066
6.到这里关于mycat的配置以及启动基本结束了,接下来就是测试了。
我往TESTDB中的t_area表插入数据,节点所在的数据库中也会有数据,说明配置基本完成。
7.以上是我看了别人的博客以及权威指南自己搭建的demo笔记