MyCAT入门实践
1.MyCAT简单介绍
MyCAT是一个彻底开源的,面向企业应用开发的大数据库集群,支持事务、ACID、可以替代MySQL的加强版数据库,是一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群
融合了内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server,并且结合传统数据库和新型分布式数据仓库的新一代企业级数据库产品,是一个新颖的数据库中间件产品
2.安装JAVA环境
参考:Windows下Java环境变量配置 http://www.cnblogs.com/heyangyi/p/8942074.html
3.下载配置MyCat
下载地址:http://dl.mycat.io/1.6-RELEASE/
其他准备工作,安装mysql,创建 db1,db2,db3三个数据库
CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET utf8 */;
CREATE DATABASE `db2` /*!40100 DEFAULT CHARACTER SET utf8 */;
CREATE DATABASE `db3` /*!40100 DEFAULT CHARACTER SET utf8 */;
分别在三个数据库中添加数据表:
CREATE TABLE `travelrecord` (
`id` bigint(20) NOT NULL,
`user_id` varchar(100) DEFAULT NULL,
`traveldate` date DEFAULT NULL,
`fee` decimal(10,0) DEFAULT NULL,
`days` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
解压下载得mycat,修改目录下得 conf 中的 schema.xml
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="0"
writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<!-- can have multi write hosts -->
<writeHost host="hostM1" url="10.0.0.209:3306" user="sa"
password="123456">
<!-- can have multi read hosts -->
<readHost host="hostS2" url="10.0.0.209:3306" user="sa" password="123456" />
</writeHost>
<writeHost host="hostS1" url="10.0.0.209:3306" user="sa"
password="123456" />
<!-- <writeHost host="hostM2" url="localhost:3316" user="root" password="123456"/> -->
</dataHost>
注意修改mysql所在得ip,port, user,password
配置mycat环境变量 MYCAT_HOME
4.运行测试MyCat
进入mycat的bin目录,运行 startup_nowrap.bat
打开MySQL Workbench,添加Connections
Host 是Mycat 所在服务IP地址,端口默认为:8066,User 和Password 是在 Mycat conf 目录下的server.xml中配置的 user 节点
测试插入数据到 travelrecord 表
insert into travelrecord(id,user_id,traveldate,fee,days) values(1,'Victor',20160101,100,10);
insert into travelrecord(id,user_id,traveldate,fee,days) values(5000001,'Job',20160102,100,10);
insert into travelrecord(id,user_id,traveldate,fee,days) values(10000001,'Slow',20160103,100,10);
分别查看db1,db2,db3中的数据
SELECT * FROM db1.travelrecord;
SELECT * FROM db2.travelrecord;
SELECT * FROM db3.travelrecord;
三条数据分别被添加到3个数据库中,这个与conf目录下autopartition-long.txt的定义有关,这个文件主要定义auto-sharding-long的规则
# range start-end ,data node index
# K=1000,M=10000.
0-500M=0
500M-1000M=1
1000M-1500M=2
其中0-500M条数据会进到 db1分片库
其中500M-1000M条数据会进到 db2分片库
其中1000M-1500M条数据会进到 db3分片库
查询刚刚添加的三天数据:进入mycat_conn链接里面,会发现存在了TESTDB逻辑库,执行查询
SELECT * FROM travelrecord;
重要配置文件简要说明
- server.xml是Mycat服务器参数调整和用户授权的配置文件
- schema.xml是逻辑库定义和表以及分片定义的配置文件
- rule.xml是分片规则的配置文件
、
MyCAT入门实践的更多相关文章
- 分布式学习系列【dubbo入门实践】
分布式学习系列[dubbo入门实践] dubbo架构 组成部分:provider,consumer,registry,monitor: provider,consumer注册,订阅类似于消息队列的注册 ...
- sass、less和stylus的安装使用和入门实践
刚 开始的时候,说实话,我很反感使用css预处理器这种新玩意的,因为其中涉及到了编程的东西,私以为很复杂,而且考虑到项目不是一天能够完成的,也很少是 一个人完成的,对于这种团队的项目开发,前端实践用c ...
- Django入门实践(三)
Django入门实践(三) Django简单应用 前面简单示例说明了views和Template的工作过程,但是Django最核心的是App,涉及到App则会和Model(数据库)打交道.下面举的例子 ...
- Django入门实践(二)
Django入门实践(二) Django模板简单实例 上篇中将html写在了views中,这种混合方式(指Template和views混在一起)不适合大型开发,而且代码不易管理和维护,下面就用Djan ...
- Django入门实践(一)
Django入门实践(一) Django编程思路+入门 认识Django有一个多月了,我觉得学习Django应该先理清它的编程思路.它是典型的MVC框架(在Django里也称MTV),我觉得Djang ...
- MyCat 入门:漫谈 MyCat 配置系统
文章首发于[博客园-陈树义],点击跳转到原文<MyCat 入门:漫谈 MyCat 配置系统> 上篇文章<MyCat 启蒙:分布式系统的数据库架构演变>中,我们通过一个项目从零到 ...
- 全文搜索引擎Elasticsearch入门实践
全文搜索引擎Elasticsearch入门实践 感谢阮一峰的网络日志全文搜索引擎 Elasticsearch 入门教程 安装 首先需要依赖Java环境.Elasticsearch官网https://w ...
- Mycat入门
1. Mycat入门 官网 http://www.mycat.io/ 1.1. 什么是Mycat 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务.ACID.可以替代MySQL的加强版数据库 ...
- 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World
操作环境 操作系统:CentOS7.2 内存:1GB CPU:2核 Docker服务常用命令 docker服务操作命令如下 service docker start #启动服务 service doc ...
随机推荐
- MySQL--Percona-XtraDB-Cluster 5.6安装笔记
安装环境: 有三台干净的CentOS 6的服务器,IP配置为:192.168.166.169,192.168.166.170,192.168.166.171,准备搭建三节点的Percona XtraD ...
- MVC+Nhibernate+spring.net(二)
在上一篇文章中我们已经把数据查了出来,现在我们来完善一下:前台使用easyui 首先我们将NHelper类完善一下 public class EmpDal { public IList<Emp& ...
- 背水一战 Windows 10 (42) - 控件(导航类): Frame 动画
[源码下载] 背水一战 Windows 10 (42) - 控件(导航类): Frame 动画 作者:webabcd 介绍背水一战 Windows 10 之 控件(导航类) Frame 动画 示例An ...
- AJPFX平台讲述买卖、点差、单位,外汇的交易时间以及外汇交易者的参与者
AJPFX平台讲解:买(多).卖(空).点差.单位 外汇保交易也就是通过外汇的升值和贬值来赚取利润.以EURUSD(欧元/美元)为例.假设目前价格为1.3820左右,即1欧元兑换1.3820美元.这个 ...
- springboot2 生产部署注意事项【持续更新】
注意事项1. 去除不需要的 jar 开发工具 jar :springs-boot-devtools2. 监控一定要做好权限制或者去除 控制 jar :spring-boot-starter-actua ...
- 【文文殿下】 [SDOI2013]保护出题人 题解
题解 我们把伤害-时间图像画出来.然后维护一下僵尸血量的前缀和.最好情况肯定是有一个僵尸恰好死在戴夫家门口.我们把原点到其他n个点的斜率最大的一个累积到答案. 发现每添加一个点,其他所有点的坐标都变了 ...
- Python黑客——快速编写信息收集器
i春秋作家:大木瓜 环境:Python 3模块:LxmlRequestBeautifulsoup开始:首先看一下目标站: http://gaokao.chsi.com.cn/gkxx/zszcgd/d ...
- yum 安装mysql数据库
1.先查看是否有安装mysql,有的话通过yum remove mysql先卸载掉,卸载完成后执行 yum install -y mysql-server mysql mysql-deve 2.启动m ...
- JS关闭窗口或JS关闭页面的几种代码!
第一种:JS定时自动关闭窗口 <script language="javascript"> <!-- function closewin(){ self.open ...
- CentOS的ssh sftp配置及权限设置[转载-验证可用]
从技术角度来分析,几个要求:1.从安全方面看,sftp会更安全一点2.线上服务器提供在线服务,对用户需要控制,只能让用户在自己的home目录下活动3.用户只能使用sftp,不能ssh到机器进行操作 提 ...