数据库中间件
狂飙的yellowcong
yellowcong
展开
-
MyCat之环境搭建-yellowcong
前几天看到了一个数据库中间件Mycat,感觉很不错,所以准备研究研究,挺好用的,Mycat简单来说,就是一个数据库的代理, 让Mycat完成数据库的分片,管理后端的数据库集群,很轻松的解决这个问题。mycat是基于基于阿里开源的Cobar产品而研发,相比而言,Mycat有取代Cobar的趋势。下载地址#官网下载地址http://dl.mycat.io/#下载地址2https://github.原创 2018-01-15 16:11:08 · 6863 阅读 · 0 评论 -
Mycat之数据库分片(取模分片)-yellowcong
取模分片,简单来讲,根据数据库的主键和存储的节点数进行取模操作,然后根据取模的结果,将数据存放到对应的节点中,取模分表,可以将数据均匀的分配到各个库中。实现的步骤:1、创建数据库,2、配置schema.xml文件,3、配置server.xml,4、添加rule.xml。这种方式,导致每一个库里面的数据不连续,导致查询的时候,比较耗费资源,但是如果有一些需要按照数字来计算类型的,可以采用这个。创建数原创 2018-01-18 09:36:43 · 3070 阅读 · 0 评论 -
Mycat之数据库分片(分片枚举)-yellowcong
枚举分片,简单来讲,就是根据某个值,决定这条数据放到哪一个库里面。我现在有个需求,我有很多用户,根据地址来放到数据库,三个数据库,湖北、北京、上海、创建数据库-- 创建数据库create database local1;-- 使用local1数据库use local1;-- 创建用户表create table user (dbname varchar(32),username varch原创 2018-01-16 22:56:24 · 1364 阅读 · 0 评论 -
Mycat之数据库分片(自定义范围分片)-yellowcong
Mycat切片规则挺多的,我就简单讲讲一些吧,这个是自定义范围分片,简单来将,就是我有两个数据库,a放多少条记录,b放多少调数据。这样就实现了分片的操作。实现步骤:1、创建数据库。2、配置schemal.xml,3、配置service.xml,4、修改rule.xml,设置默认插入的节点、5、修改auto-sharding-long.txt,设置置分片范围。创建数据库这个地方我主键采用的是本地时间原创 2018-01-16 16:02:43 · 4602 阅读 · 1 评论 -
Mycat之数据库主键自增长(本地时间戳方式)-yellowcong
本地时间的方式,id自动生成的策略ID= 64 位二进制 (42(毫秒)+5(机器 ID)+5(业务编码)+12(重复累加),这个本地时间戳的方式是mycat默认的,所以大家在配置的时候,确认一下自己server.xml中的sequnceHandlerType配置是否为2。实现本地时间戳注意点,就是自动生成的id是18位的,所以大家在创建表的时候,需要注意下主键的大小。创建数据库#创建数据库cr原创 2018-01-16 15:13:36 · 2351 阅读 · 1 评论 -
Mycat之数据库主键自增长(本地文件的方式)-yellowcong
通过本地文件的方式,mycat将配置classpath目录下面的sequence_conf.properties文件中,自动进行增长,但是这个自增长的问题是,每当mycat重启之后,计数的方式就改变了,需要重新开始了。这种方式不适合。实现的步骤,1、创建数据库。2、配置schema.xml文件,设定主键和自增长,3、配置server.xml,配置为本地文件方式,4、配置equence_conf.p原创 2018-01-16 14:28:10 · 1027 阅读 · 0 评论 -
Mycat之数据库主键自增长(数据库增长的方式)-yellowcong
我们先来通过mycat实现一个自增长的主键,现在有两个数据库,mycat和mycat2,然后设定数据库增长的方式,按照自增长的方式实现。自增长实现步骤:1、创建数据库,2、创建mycat的自增长函数,3、插入需要自增长策略,4、配置schemal.xml,添加自增长的表,5、配置server.xml,设置主键增长策略,6、配置sequence_db_conf.properties,添加需要自增长的原创 2018-01-16 13:52:04 · 10504 阅读 · 5 评论 -
Mycat之全局表-yellowcong
Mycat中表的类型中,定义了全局表和普通表,全局表,可以说就是在每一个数据库节点中,都存在,在mycat中,对全局表的变更 操作,都会发送到每一个节点上,全局表的特点是,变化小,数据量不是特别多,而且全局都是依赖于它的,这种表在系统中,常见的是基础表,比如菜单、网站系统信息,数据字典等。全局表在mycat中,也是很有优先权的,可以和任何的表进行join操作全局表的作用 在分片的情况下,当业务表原创 2018-01-16 10:02:31 · 6683 阅读 · 0 评论 -
Mycat之系统监控-yellowcong
show @@help 是一个方便进行管理的命令,所使用的端口是9906,可以根据这个端口来做一个监控系统,监控mycat,已经有mycat-web这个系统来监控了,管理端口目前不支持SQL查询语句,支持以下监控语法命令,而8806是业务系统用来接收SQL语句然后路由的系统,还没有试过有哪些SQL语句目前支持不了。这个系统监控,不能执行sql语句,如果需要执行sql语句,还是需要到8066端口号,原创 2018-01-16 10:11:22 · 927 阅读 · 0 评论 -
Mycat之数据库分片(时间分片,按月份分片)-yellowcong
取模分片,简单来讲,根据数据库的主键和存储的节点数进行取模操作,然后根据取模的结果,将数据存放到对应的节点中,取模分表,可以将数据均匀的分配到各个库中。实现的步骤:1、创建数据库,2、配置schema.xml文件,3、配置server.xml,4、添加rule.xml。这种方式。 数据库时间分片,有个问题,就比如按照月份分片,我只能分片这一年的数据,如果来年了,我还需要自己手动来创建一个表,然后在做原创 2018-01-18 16:04:53 · 5720 阅读 · 5 评论