windows下配置mycat与常见问题解决
2018-01-05 16:07
375 查看
mycat官网:http://www.mycat.org.cn/
wiki:https://github.com/MyCATApache/Mycat-Server/wiki
MyCat使用Mysql的通讯协议模拟成一个MySQl服务器,并建立了完整的Schema(数据库)、Table(数据表)、User(用户)的逻辑模型,并将这套逻辑模型映射到后端的存储节点DataNode上的真实的物理库中,这样一来所有能使用MySQL的客户端及编程语言都能将Mycat当成MYSQLServer使用,不必开发新的客户端。
Mycat的原理:当Mycat收到一个客户端发送的SQL请求,会先对SQL进行语法分析和检查,分析的结果用SQL路由,SQL路由策略支持传统的基于表格的分片字段进行分片,也支持独有的基于数据库E-R关系的分别片策略,对于路由到多个数据节点(DataNode)的SQL,则会对收到的数据集进行”归并“,然后输出到客户端。
DataNode是MyCat的逻辑数据节点,映射到后端的某一个物理数据库的一个Datebase,为了做到系统高可用,每个DataNode可以配置多个引用地址(DataSource),当主DataSource被检测为不可用时,系统会自动切换到下一个可用的DataSource上,这里的DataSoure即可认为是Mysql的主流服务器的地址。
安装:
1、下载安装包 https://github.com/MyCATApache/Mycat-download/tree/master/1.5-RELEASE 选择windows版本。
2、解压下载的mycat安装包的知道目录
3、搭建java环境,下载jdk8(mycat 1.5.1-RELEASE对应的版本呢)并安装,配置相应的环境变量。
4、修改mycat配置文件:
【1】wrapper.conf 修改wrapper.java.command对应的java jdk对应的目录,例如:wrapper.java.command=G:\java_jdk\jdk\bin\java.exe
【2】修改server.xml,mycat的基本配置文件,可以配置端口、绑定ip等相关配置,默认配置文件中,是注释掉,走默认值。这块主要配置mycat登录的用户名和密码
[html] view plain copy print?<user name="root">
<property name="password">root</property>
<property name="schemas">TESTDB</property>
</user>
配置用户名为root,密码是root,用户有权限的逻辑库TESTDB
【3】修改schema.xml (定义逻辑库,表、分片节点等内容)
schema对应逻辑库:TESTDB
table对应逻辑表:t_user
dataNode对应分片
dataHost对应物理库真实映射
[html] view plain copy print?<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://org.opencloudb/">
<schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1">
<table name="t_user" dataNode="dn1,dn2" rule="sharding-by-mod2"/>
<table name="ht_jy_login_log" primaryKey="ID" dataNode="dn1,dn2" rule="sharding-by-date_jylog"/>
</schema>
<dataNode name="dn1" dataHost="localhost1" database="mycat_node1"/>
<dataNode name="dn2" dataHost="localhost1" database="mycat_node2"/>
<dataHost name="localhost1" writeType="0" switchType="1" slaveThreshold="100" balance="1" dbType="mysql" maxCon="10" minCon="1" dbDriver="native">
<heartbeat>show status like 'wsrep%'</heartbeat>
<writeHost host="hostM1" url="127.0.0.1:3306" user="root" password="root" >
</writeHost>
</dataHost>
</mycat:schema >
5、mycat的分片规则下一篇讲解
6、启动mycat。
mycat.bat start 启动
mycat.bat stop 停止
mycat.bat console 前台运行
mycat.bat install 添加到系统自动启动(暂未实现)
mycat.bat remove 取消随系统自动启动(暂未实现)
mycat.bat restart 重启服务
mycat.bat pause 暂停
mycat.bat status 查看启动状态
7、通过navcat进行链接测试:
地址:localhost
端口:8066
账号:root
密码:root
8、常见问题:
【1】wrapper | OpenSCManage failed - 拒绝访问
解决办法:cmd以管理员身份运行。
【2】Unsupported major.minor version 51.0
解决办法:调整本地jdk的版本,试试jdk8.0
【3】Error: Could not create the Java Virtual Machine.
解决办法:
wrapper.java.additional.10=-Xmx1G
wrapper.java.additional.11=-Xms512M
修改最后一个值的大小,例如:wrapper.java.additional.11=-Xms1G
wiki:https://github.com/MyCATApache/Mycat-Server/wiki
MyCat使用Mysql的通讯协议模拟成一个MySQl服务器,并建立了完整的Schema(数据库)、Table(数据表)、User(用户)的逻辑模型,并将这套逻辑模型映射到后端的存储节点DataNode上的真实的物理库中,这样一来所有能使用MySQL的客户端及编程语言都能将Mycat当成MYSQLServer使用,不必开发新的客户端。
Mycat的原理:当Mycat收到一个客户端发送的SQL请求,会先对SQL进行语法分析和检查,分析的结果用SQL路由,SQL路由策略支持传统的基于表格的分片字段进行分片,也支持独有的基于数据库E-R关系的分别片策略,对于路由到多个数据节点(DataNode)的SQL,则会对收到的数据集进行”归并“,然后输出到客户端。
DataNode是MyCat的逻辑数据节点,映射到后端的某一个物理数据库的一个Datebase,为了做到系统高可用,每个DataNode可以配置多个引用地址(DataSource),当主DataSource被检测为不可用时,系统会自动切换到下一个可用的DataSource上,这里的DataSoure即可认为是Mysql的主流服务器的地址。
安装:
1、下载安装包 https://github.com/MyCATApache/Mycat-download/tree/master/1.5-RELEASE 选择windows版本。
2、解压下载的mycat安装包的知道目录
3、搭建java环境,下载jdk8(mycat 1.5.1-RELEASE对应的版本呢)并安装,配置相应的环境变量。
4、修改mycat配置文件:
【1】wrapper.conf 修改wrapper.java.command对应的java jdk对应的目录,例如:wrapper.java.command=G:\java_jdk\jdk\bin\java.exe
【2】修改server.xml,mycat的基本配置文件,可以配置端口、绑定ip等相关配置,默认配置文件中,是注释掉,走默认值。这块主要配置mycat登录的用户名和密码
[html] view plain copy print?<user name="root">
<property name="password">root</property>
<property name="schemas">TESTDB</property>
</user>
<user name="root"> <property name="password">root</property> <property name="schemas">TESTDB</property> </user>
配置用户名为root,密码是root,用户有权限的逻辑库TESTDB
【3】修改schema.xml (定义逻辑库,表、分片节点等内容)
schema对应逻辑库:TESTDB
table对应逻辑表:t_user
dataNode对应分片
dataHost对应物理库真实映射
[html] view plain copy print?<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://org.opencloudb/">
<schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1">
<table name="t_user" dataNode="dn1,dn2" rule="sharding-by-mod2"/>
<table name="ht_jy_login_log" primaryKey="ID" dataNode="dn1,dn2" rule="sharding-by-date_jylog"/>
</schema>
<dataNode name="dn1" dataHost="localhost1" database="mycat_node1"/>
<dataNode name="dn2" dataHost="localhost1" database="mycat_node2"/>
<dataHost name="localhost1" writeType="0" switchType="1" slaveThreshold="100" balance="1" dbType="mysql" maxCon="10" minCon="1" dbDriver="native">
<heartbeat>show status like 'wsrep%'</heartbeat>
<writeHost host="hostM1" url="127.0.0.1:3306" user="root" password="root" >
</writeHost>
</dataHost>
</mycat:schema >
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mycat:schema SYSTEM "schema.dtd"><mycat:schema xmlns:mycat="http://org.opencloudb/"> <schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1"> <table name="t_user" dataNode="dn1,dn2" rule="sharding-by-mod2"/> <table name="ht_jy_login_log" primaryKey="ID" dataNode="dn1,dn2" rule="sharding-by-date_jylog"/> </schema> <dataNode name="dn1" dataHost="localhost1" database="mycat_node1"/> <dataNode name="dn2" dataHost="localhost1" database="mycat_node2"/> <dataHost name="localhost1" writeType="0" switchType="1" slaveThreshold="100" balance="1" dbType="mysql" maxCon="10" minCon="1" dbDriver="native"> <heartbeat>show status like 'wsrep%'</heartbeat> <writeHost host="hostM1" url="127.0.0.1:3306" user="root" password="root" > </writeHost> </dataHost></mycat:schema >
5、mycat的分片规则下一篇讲解
6、启动mycat。
mycat.bat start 启动
mycat.bat stop 停止
mycat.bat console 前台运行
mycat.bat install 添加到系统自动启动(暂未实现)
mycat.bat remove 取消随系统自动启动(暂未实现)
mycat.bat restart 重启服务
mycat.bat pause 暂停
mycat.bat status 查看启动状态
7、通过navcat进行链接测试:
地址:localhost
端口:8066
账号:root
密码:root
8、常见问题:
【1】wrapper | OpenSCManage failed - 拒绝访问
解决办法:cmd以管理员身份运行。
【2】Unsupported major.minor version 51.0
解决办法:调整本地jdk的版本,试试jdk8.0
【3】Error: Could not create the Java Virtual Machine.
解决办法:
wrapper.java.additional.10=-Xmx1G
wrapper.java.additional.11=-Xms512M
修改最后一个值的大小,例如:wrapper.java.additional.11=-Xms1G
相关文章推荐
- windows下配置mycat与常见问题解决
- zookeeper的配置(Windows环境和Linux环境下)常见问题(zookeeper_server.pid: No such file or directory)解决
- windows 2008初体验常见问题: 无线网络"没有正确配置为使用IP协议" 错误解决办法
- windows 2008初体验常见问题: 无线网络"没有正确配置为使用IP协议" 错误解决办法
- eclipse for java ee的tomcat配置(常见问题解决)(linux或windows兼可)
- Windows下的PHP开发环境配置及常见问题解决
- Windows操作系统常见安全问题解决方法
- 解决在Fedora 12 中配置后Samba服务后,Windows依然无法访问Linux共享目录的问题。
- 在Windows上安装Python+MySQL 的常见问题及解决方法
- Windows操作系统常见安全问题解决方法
- Windows操作系统常见安全问题解决方法
- 在windows下解决wamper加载pgsql的问题/配置方法
- lamp安装及常见问题解决(附配置文件)
- Solaris 10 下 Samba 的详细配置步骤和常见问题解决
- Oracle tns配置的6种常见错误解决问题
- 因计算机磁盘硬件配置问题windows无法启动及HP系列机器不能使用GHOST的解决方法
- windows下配置PHP5.2.5+Apache 2.2.9+MySQL 6.0.5问题解决
- 第四期专家在线_Windows 2000/XP/2003 组策略配置和常见问题
- 在Windows上安装Python+MySQL 的常见问题及解决方法
- 由于计算机磁盘硬件配置出现问题,导致 Windows 无法启动的解决方法 由于计算机磁盘硬件配置出现问题,导致 Windows 无法启动