MySQL数据库实践学习(九)
2023-06-13 09:13:59 时间
3.3.4 测试
3.3.4.1 启动
配置完毕后,先启动涉及到的3台分片服务器,然后启动MyCat服务器。切换到Mycat的安装目录,执行如下指令,启动Mycat:
#启动
bin/mycat start
#停止
bin/mycat stop
Mycat启动之后,占用端口号 8066。
启动完毕之后,可以查看logs目录下的启动日志,查看Mycat是否启动完成。
3.3.4.2 测试
1). 连接MyCat
通过如下指令,就可以连接并登陆MyCat。
mysql -h 192.168.200.210 -P 8066 -uroot -p123456
我们看到我们是通过MySQL的指令来连接的MyCat,因为MyCat在底层实际上是模拟了MySQL的协议。
2). 数据测试
然后就可以在MyCat中来创建表,并往表结构中插入数据,查看数据在MySQL中的分布情况。
CREATE TABLE TB_ORDER (
id BIGINT(20) NOT NULL,
title VARCHAR(100) NOT NULL ,
PRIMARY KEY (id)
) ENGINE=INNODB DEFAULT CHARSET=utf8 ;
INSERT INTO TB_ORDER(id,title) VALUES(1,'goods1');
INSERT INTO TB_ORDER(id,title) VALUES(2,'goods2');
INSERT INTO TB_ORDER(id,title) VALUES(3,'goods3');
INSERT INTO TB_ORDER(id,title) VALUES(1,'goods1');
INSERT INTO TB_ORDER(id,title) VALUES(2,'goods2');
INSERT INTO TB_ORDER(id,title) VALUES(3,'goods3');
INSERT INTO TB_ORDER(id,title) VALUES(5000000,'goods5000000');
INSERT INTO TB_ORDER(id,title) VALUES(10000000,'goods10000000');
INSERT INTO TB_ORDER(id,title) VALUES(10000001,'goods10000001');
INSERT INTO TB_ORDER(id,title) VALUES(15000000,'goods15000000');
INSERT INTO TB_ORDER(id,title) VALUES(15000001,'goods15000001');
经过测试,我们发现,在往 TB_ORDER 表中插入数据时:
如果id的值在1-500w之间,数据将会存储在第一个分片数据库中。
如果id的值在500w-1000w之间,数据将会存储在第二个分片数据库中。
如果id的值在1000w-1500w之间,数据将会存储在第三个分片数据库中。
如果id的值超出1500w,在插入数据时,将会报错。
为什么会出现这种现象,数据到底落在哪一个分片服务器到底是如何决定的呢?这是由逻辑表配置时的一个参数 rule 决定的,而这个参数配置的就是分片规则,关于分片规则的配置,在后面的课程中会详细讲解。
3.4 MyCat配置
3.4.1 schema.xml
schema.xml 作为MyCat中最重要的配置文件之一 , 涵盖了MyCat的逻辑库 、 逻辑表 、 分片规则、分片节点及数据源的配置。
主要包含以下三组标签:
schema标签
datanode标签
datahost标签
相关文章
- MySQL的字段类型_mysql数据库字段类型
- Linux系统MySQL的常用操作命令详解数据库
- MySQL存储体现精彩生活:使用图片(mysql存放图片)
- MySQL 数据库一致性检查的重要性(mysql一致性检查)
- MySQL 构建安全防护体系(mysql安全防护)
- MySQL中创建高效数据表的指南(创建数据表mysql)
- 失去了MySQL,执行了跑路!(mysql从删库到跑路)
- MySQL 启动配置文件优化实践(mysql启动文件)
- PHP操作MySQL数据库实现排名(mysql排名php)
- MySQL中的事务管理与使用(mysql的事务语句)
- 25word article title: English Literature on MySQL Databases(mysql数据库英文文献)
- 查询MySQL 运用参数化查询简化数据库操作(mysql 参数化)
- CSV格式数据简单导入MySQL数据库的方法(csv 导入 mysql)
- MySQL 10060:一个重要的数据库关键码(10060 mysql)
- MySQL数据库: 极大优势实现数据管理升级(mysql数据库 的优势)
- 实现MySQL登录功能一步一步学习C语言(c mysql登录功能)
- MySQL数据库1053错误解决方案(mysql中1053错误)
- Ameba数据库MySQL改变你的数据存储方式(ameba mysql)
- MySQL午餐合集学习数据库知识还可享受美味午餐(mysql中午版)
- MySQL的连接方式 理解基本连接和持久化连接的区别(mysql两种连接方式)
- MySQL数据库不支持事务操作(mysql 不支持事物)