环境安装与配置
MyCAT 目前主要通过配置文件的方式来定义逻辑库和相关配置:
• MYCAT_HOME/conf/schema.xml 中定义逻辑库,表、分片节点等内容;
• MYCAT_HOME/conf/rule.xml 中定义分片规则;
• MYCAT_HOME/conf/server.xml 中定义用户以及系统相关变量,如端口等。
服务安装与配置
1,linux
MyCAT 有提供编译好的安装包,支持windows、Linux、Mac、Solaris 等系统上安装与运行。
linux 下可以下载Mycat-server-xxxxx.linux.tar.gz 解压在某个目录下,注意目录不能有空格,在Linux(Unix)下,建议放在usr/local/Mycat 目录下,如下:
下面是修改MyCAT 用户密码的方式(仅供参考):
目录解释如下:
bin 程序目录,存放了window 版本和linux 版本,除了提供封装成服务的版本之外,也提供了nowrap 的shell 脚本命令,方便大家选择和修改,进入到bin 目录:
Linux 下运行:./mycat console,首先要chmod +x *
注:mycat 支持的命令{ console | start | stop | restart | status | dump }
conf 目录下存放配置文件,server.xml 是Mycat 服务器参数调整和用户授权的配置文件,schema.xml 是逻辑库定义和表以及分片定义的配置文件,rule.xml 是分片规则的配置文件,分片规则的具体一些参数信息单独存放为文件,也在这个目录下,配置文件修改,需要重启Mycat 或者通过9066 端口reload.
lib 目录下主要存放mycat 依赖的一些jar 文件.
日志存放在logs/mycat.log 中,每天一个文件,日志的配置是在conf/log4j.xml 中,根据自己的需要,可以调整输出级别为debug,debug 级别下,会输出更多的信息,方便排查问题.
注意:Linux 下部署安装MySQL,默认不忽略表名大小写,需要手动到/etc/my.cnf 下配置
lower_case_table_names=1 使Linux 环境下MySQL 忽略表名大小写,否则使用MyCAT 的时候会提示找不到表的错误!
2,windows
windows 下可以下载Mycat-server-xxxxx-win.tar.gz 解压在某个目录下,建议解压到本地某个盘符根目录下,如下:
目录解释如下:
bin 程序目录,存放了window 版本和linux 版本,除了提供封装成服务的版本之外,也提供了nowrap 的shell 脚本命令,方便大家选择和修改,进入到bin 目录:
Windows 下运行:运行: mycat.bat 在控制台启动程序,也可以装载成服务,若此程序运行有问题,也可以运行startup_nowrap.bat,确保java 命令可以在命令执行。
Windows 下将MyCAT 做成系统服务:MyCAT 提供warp 方式的命令,可以将MyCAT 安装成系统服务并可启动和停止。
1) 进入bin 目录下, 输入./mycat start 启动mycat 服务。
conf 目录下存放配置文件,server.xml 是Mycat 服务器参数调整和用户授权的配置文件schema.xml 是逻辑库定义和表以及分片定义的配置文件,rule.xml 是分片规则的配置文件,分片规则的具体一些参数信息单独存放为文件,也在这个目录下,配置文件修改,需要重启Mycat 或者通过9066 端口reload。lib 目录下主要存放mycat 依赖的一些jar 文件。
日志存放在logs/mycat.log 中,每天一个文件,日志的配置是在conf/log4j.xml 中,根据自己的需要,可以调整输出级别为debug,debug 级别下,会输出更多的信息,方便排查问题。
服务启动与启动设置
1,linux
MyCAT 在Linux 中部署启动时,首先需要在Linux 系统的环境变量中配置MYCAT_HOME,操作方式如下:
1) vi /etc/profile,在系统环境变量文件中增加MYCAT_HOME=/usr/local/Mycat。
2) 执行source /etc/profile 命令,使环境变量生效。
如果是在多台Linux 系统中组建的MyCAT 集群,那需要在MyCAT Server 所在的服务器上配置对其他ip 和主机名的映射,配置方式如下:
vi /etc/hosts
例如:我有4 台机器,配置如下:
IP 主机名:
192.168.100.2 sam_server_1
192.168.100.3 sam_server_2
192.168.100.4 sam_server_3
192.168.100.5 sam_server_4
编辑完后,保存文件。
经过以上两个步骤的配置,就可以到/usr/local/Mycat/bin 目录下执行:
./mycat start
即可启动mycat 服务!
2,windows
MyCAT 在windows 中部署时,建议放在某个盘符的根目录下,如果不是在根目录下,请尽量不要放在包含
中文的目录下
如:D:\Mycat-server-1.4-win\
命令行方式启动:
从cmd 中执行命令到达D:\Mycat-server-1.4-win\bin 目录下,执行startup_nowrap.bat 即可启动
MyCAT 服务。
基于zookeper的启动
1.5 开始会支持本地xml 启动,以及从zk 加载配置转为本地xml 的两种方式,conf 下的zk.conf 文件里设置loadfromzk 参数默认为false
如果没有这个文件,或者没有loadfromzk 为true 的参数,即从本地加载。下面介绍从ZK 启动相关配置。
Zk-create.yaml 说明
1.5 正式引入zookeeper(以下简称zk)管理Mycat-Server,启动server 第一步是初始化zk 数据,下面介绍初始化zk 数据步骤,信息在zk-create.yaml。Mycat ZK 配置文件详解:
https://github.com/MyCATApache/Mycatdoc/blob/master/%E8%AE%BE%E8%AE%A1%E6%96%87%E6%A1%A3/2.0/Mycat%20ZK%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E8%AF%A6%E8%A7%A3.docx
1、zk-create 总体结构
2、参数说明
2.1、zkURL,zk 连接地址
2.2、mycat-cluster
2.3、mycat-hosts
2.4、mycat-zones
2.5、mycat-nodes
2.6、mycat-mysqls
.7、mysql-reps
Zk 初始化
1、进入MYCAT/bin 目录
cd /data/test1/mycat/bin
2、修改MYCAT/conf/zk-create.yaml 内容
修改方法见“Zk-create.yaml 说明”。
3、启动ZK
启动ZK: bin/zkServer.sh start
登陆ZK: bin/zkCli.sh
4、初始化ZK 数据
sh create_zookeeper_data.sh
等待执行结束后,检查ZK 数据
5、检查ZK 数据
OK,数据初始化成功。
demo 使用
springMVC+ibatis+FreeMarker 连接mycat 示例: