文章目录
1、服务器规划
编号 | 角色 | IP 地址 | 说明 |
---|---|---|---|
1 | 客户端 | 192.168.140.1 | 我使用的的电脑(win10) |
2 | Mycat | 192.168.140.100 | linux |
3 | mysql(写) | 192.168.140.200 | linux |
4 | mysql(读) | 192.168.140.201 | linux |
服务器选择:
Mycat 作为数据库中间件,不要和数据库部署在同一个机器上。
2、 下载、解压
1、下载
Mycat 的官网: http://www.mycat.io
本次选择的版本是 Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz
2、解压到 /usr/local/ 目录下
tar -zxvf Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz -C /usr/local/
3、 三个配置文件
在Mycat 的 mycat/conf
目录下,有3个重要配置文件:
schema.xml
: 定义逻辑数据库,表、分片节点等内容rule.xml
: 定义分片规则server.xml
: 定义用户以及系统相关变量,如端口等
3、确定Mysql 已发安装并启动成功
Mycat 启动前,请确定Mysql 已发安装并启动成功。此处省略Mysql 安装启动。
4、Mycat 配置
4.1、 修改配置文件server.xml
启动Mycat 前,必须配置Mycat 的帐号和密码。
在 server.xml 最后面,创建 用户名是 mycat,密码是 123456 的Mycat 用户:
<user name="mycat">
<property name="password">123456</property>
<property name="schemas">TESTDB</property>
</user>
4.2、修改配置文件 schema.xml
<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1" >
</schema>
<dataNode name="dn1" dataHost="host1" database="testdb" />
<dataHost name="host1" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="hostM1" url="192.168.1.200:3306" user="root" password="123456">
<readHost host="hostS2" url="192.168.1.201:3306" user="root" password="123456" />
</writeHost>
</dataHost>
</mycat:schema>
4.3、 远程授权
如果mycat 与mysql 不在同一个服务器上,那么就是远程访问,需要授权的。
在 192.168.1.200、201的 mysql 服务上执行:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' ;
测试:
在 mycat 主机上(192.168.140.100),测试是否能连接到 192.168.1.200、201的 Mysql 服务。
mysql -uroot -p123123 -h 192.168.140.200 -P 3306
mysql -uroot -p123123 -h 192.168.140.201 -P 3306
5、启动
Mycat 启动程序有两种方式:
- 控制台启动 : 在
mycat/bin
目录下执行./mycat console
- 后台启动(推荐) :在
mycat/bin
目录下./mycat start
当前为了测试,方便定位问题,我们选择第1种方式:控制台启动。
在日志的最后一行,如果是 successfully
+++时,说明安装成功了!
5.1 启动、停止、重启命令
说明 | 命令 |
---|---|
启动 Mycat | ./mycat start 、 ./mycat console |
查看启动状态 | ./mycat status |
停止 | ./mycat stop |
重启 | ./mycat restart |
6、测试
Mycat 有两个端口,8066 是 数据平台的端口,9066是管理配置平台的端口。
如果要修改端口号(如端口被占用,冲突等),需要配置 serve.xml 。
6.1、登录Mycat后台命令
登录Mycat 的 数据平台、管理平台的命令是一样,仅端口号不同:
mysql -umycat -p123456 -h 192.168.140.100 -P 8066
参数:-u
表示 用户名-p
表示 密码-h
表示 ip地址-P
表示 端口。(8066 是 数据平台的端口,9066是管理配置平台)
6.2、8066 数据平台
6.3、9066 管理配置平台
1、show @@help
show @@help
所有的命令可以通过此命令查看帮助
2、reload 命令,更新 或者 重新加载配置
reload @@config
: 该命令用于更新 schema.xml 配置文件,例如更新 schema.xml 文件后在命令窗口输入该命令。不用重启即可进行配置文件的更新:
reload @@config_all
: 该命令用于更新所有配置文件,不用重启即可进行配置文件的更新。示例如下:
reload @@sqlslow=0
: 设置慢 SQL时间阈值。
reload @@user_stat
:该命令工作在 9066 端口,用来将客户端执行 show @@sql ; show @@sql.sum ; show@@slow.success ;
3、show 命令
show @@datanode
: 用于查询显示 Mycat 数据节点列表。还可以通过 show @@datanode where schema = ?
的方式查询指定逻辑库(区分大小写)的数据节点。如下图:
包括每个数据节点当前活动连接数(active),空闲连接数(idle)以及最大连接数(maxCon) size,execute 参数表示从该节点获取连接的次数,次数越多,说明访问该节点越多。
参数:
name :表示 数据节点的名称 。
datahost :表示 对应的数据主机 。
active :表示 活动连接。
idle :表示 空闲连接 。
size :表示 最大连接数量 。
show @@syslog limit
显示系统日志。show @@syslog limit=10
显示最多 10 行 Mycat-Server 日志记录信息
show @@heartbeat
前后端物理库的心跳检测情况,RS_CODE为1表示心跳正常。
show @@version
查看版本。show @@connection
前端客户端连接情况。show @@backend
后端物理库连接信息,包括当前连接数,端口等信息。show @@cache
显示缓存的使用情况,对于性能监控和调优很有价值。show @@datasource
查看数据状态,配置的读写服务器,如果配置了主从,或者多主可以切换 。show @@sql
查看执行的sql。show @@sql.sum
查看执行的sql的统计信息。show @@sql.slow
show @@slow.success
来源:CSDN
作者:xiaojin21cen
链接:https://blog.csdn.net/xiaojin21cen/article/details/103879580