Java自学者论坛

 找回密码
 立即注册

手机号码,快捷登录

恭喜Java自学者论坛(https://www.javazxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,会员资料板块,购买链接:点击进入购买VIP会员

JAVA高级面试进阶训练营视频教程

Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程Go语言视频零基础入门到精通Java架构师3期(课件+源码)
Java开发全终端实战租房项目视频教程SpringBoot2.X入门到高级使用教程大数据培训第六期全套视频教程深度学习(CNN RNN GAN)算法原理Java亿级流量电商系统视频教程
互联网架构师视频教程年薪50万Spark2.0从入门到精通年薪50万!人工智能学习路线教程年薪50万大数据入门到精通学习路线年薪50万机器学习入门到精通教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程MySQL入门到精通教程
查看: 476|回复: 0

windows下配置mycat与常见问题解决

[复制链接]
  • TA的每日心情
    奋斗
    2024-4-6 11:05
  • 签到天数: 748 天

    [LV.9]以坛为家II

    2034

    主题

    2092

    帖子

    70万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    705612
    发表于 2021-9-5 17:39:10 | 显示全部楼层 |阅读模式

    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登录的用户名和密码

    1. <user name="root">  
    2.     <property name="password">root</property>  
    3.     <property name="schemas">TESTDB</property>  
    4. </user>  


    配置用户名为root,密码是root,用户有权限的逻辑库TESTDB
    【3】修改schema.xml (定义逻辑库,表、分片节点等内容)
    schema对应逻辑库:TESTDB
    table对应逻辑表:t_user
    dataNode对应分片
    dataHost对应物理库真实映射
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <!DOCTYPE mycat:schema SYSTEM "schema.dtd">  
    3.   
    4.   
    5. <mycat:schema  xmlns:mycat="http://org.opencloudb/">  
    6.   <schema name="TESTDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1">  
    7.       <table name="t_user" dataNode="dn1,dn2" rule="sharding-by-mod2"/>  
    8.       <table name="ht_jy_login_log" primaryKey="ID" dataNode="dn1,dn2" rule="sharding-by-date_jylog"/>  
    9.   </schema>  
    10.   <dataNode name="dn1" dataHost="localhost1" database="mycat_node1"/>  
    11.   <dataNode name="dn2" dataHost="localhost1" database="mycat_node2"/>  
    12.   
    13.   
    14.   <dataHost name="localhost1" writeType="0" switchType="1" slaveThreshold="100" balance="1" dbType="mysql" maxCon="10" minCon="1" dbDriver="native">  
    15.     <heartbeat>show status like 'wsrep%'</heartbeat>  
    16.     <writeHost host="hostM1" url="127.0.0.1:3306" user="root" password="root" >  
    17.     </writeHost>    
    18.   </dataHost>  
    19. </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


    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|小黑屋|Java自学者论坛 ( 声明:本站文章及资料整理自互联网,用于Java自学者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-4 19:55 , Processed in 0.064637 second(s), 29 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表