mycat教程(二) —— mycat使用教程及分片方法案例
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,在完成mycat安装后, 开始一个示例来尽快熟悉mycat一、环境说明1. 服务器说明服务器名称地址说明mycat服务器10.211.55.13mycat中间件服务器mysql服务器10.211.55
千家信息网最后更新 2025年02月01日mycat教程(二) —— mycat使用教程及分片方法案例
在完成mycat安装后, 开始一个示例来尽快熟悉mycat
一、环境说明
1. 服务器说明
服务器名称 | 地址 | 说明 |
---|---|---|
mycat服务器 | 10.211.55.13 | mycat中间件服务器 |
mysql服务器 | 10.211.55.9 | mysql服务器 |
2. mysql 库和表说明
库名称 | 说明 |
---|---|
db01 | 只有一个user表 |
db02 | item表 |
db03 | item表 |
db02,db03上的item表根据id%2取模保存数据, 也就是进行了数据分片
db01 创建表语句
CREATE TABLE `users` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(50) NOT NULL DEFAULT '',`indate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
- db02,db03 创建表语句
CREATE TABLE `item` (`id` int(11) NOT NULL AUTO_INCREMENT,`value` int(11) NOT NULL DEFAULT '0',`indate` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8
3. mycat服务器说明
mycat目录: /usr/local/mycat
至此, 我们的环境就配置好了
二、配置mycat服务
1. server.xml配置
路径在 /usr/local/mycat/conf/server.xml
0 0 1 0 8066 9066 300000 0.0.0.0 4096 32 0 1 1m 1k 0 384m true 123456 TESTDB user TESTDB true
2. 配置rule.xml
路径在: /usr/local/mycat/conf/rule.xml
function必须在tableRule的下面, 否则会报错找不到
id mod-long 2 160
3. 配置schema.xml
路径在: /usr/local/mycat/conf/schema.xml
声明也必须按照顺序, 最不需要调用的, 放在最后。
select user()
4. 启动mycat
> cd /usr/local/mycat/bin> ./mycat start
如果发生错误可以查看/usr/local/mycat/logs/wrapper.log日志
三、验证
1. 验证user表的查询写入
账号和密码都是server.xml声明的
> /usr/local/mysql/bin/mysql -h20.211.55.13 -uroot -P8066 -p123456
2. 查看库
mysql> show databases;+----------+| DATABASE |+----------+| TESTDB |+----------+1 row in set (0.00 sec)
发现有TESTDB库
3. 查看表
mysql> use TESTDB;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> show tables;+------------------+| Tables in TESTDB |+------------------+| item || users |+------------------+2 rows in set (0.00 sec)
看到了item和users表, 这就是我们在schema.xml中声明的逻辑表, 实际对应的是mysql服务器上的表
4. 验证user的写入
mysql> insert into users (`id`, `name`, `indate`)values(1, 'test_name', '2017-01-01');Query OK, 1 row affected (0.08 sec)mysql>
去实际的users表中看, 数据也存在。
5. 验证查询
mysql> select * from users;+----+-----------+---------------------+| id | name | indate |+----+-----------+---------------------+| 1 | test_name | 2017-01-01 00:00:00 |+----+-----------+---------------------+1 row in set (0.06 sec)
也可以查到, 说明执行成功了
2. 验证item表
1. 验证写入
因为id分布式的话,id无法自增判断, 所以必须指定id, 否则提示错误。这个在稍后会介绍如何解决
mysql> insert into item(`id`, `value`, `indate`)values(1, 1, '2017-01-01');Query OK, 1 row affected (0.01 sec)
查看实际的库, 发现写在了db03库中,
再写入一条
mysql> insert into item(`id`, `value`, `indate`)values(2, 2, '2017-01-01');Query OK, 1 row affected (0.01 sec)
发现写在了db02库中, 所以分片的方式也成功了
2. 验证查询
+----+-------+---------------------+| id | value | indate |+----+-------+---------------------+| 2 | 2 | 2017-01-01 00:00:00 || 1 | 1 | 2017-01-01 00:00:00 |+----+-------+---------------------+2 rows in set (0.03 sec)
也有了两条记录
欢迎访问我的博客
服务
服务器
验证
配置
实际
数据
路径
查询
成功
名称
环境
语句
错误
教程
中看
中间件
也就是
分布式
博客
只有
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国际网络安全科技馆
肇庆教育软件开发
舟山企业网络安全准入控制系统
plsql怎么打开数据库列表
网络安全系统产业链
投行IT软件开发
中兴服务器设置管理ip
服务器显卡和内存
警务室改造期间网络安全防护
计算机网络技术交换对照表格
对网络技术基础的理解
武汉大学数据库检索
nhanes数据库的文章好发吗
软件开发技术难度
摩臣软件开发多久了
鲜艳网络安全手抄报
svn服务器部署
ftp管理云服务器软件
悠悠网络技术有限公司
不能再安全的服务器上玩游戏
关系型数据库的大小取决于
方舟手机版服务器价格多少钱
数据库实体之间的联系有几种
oracle数据库专题
网络安全隐患大排查实施方案
网络安全督导表
平遥租房网络安全
切换到网络安全模式
sql数据库及口令
数据库如何检索null值