青橙项目配套软件mycat_第1页
青橙项目配套软件mycat_第2页
青橙项目配套软件mycat_第3页
青橙项目配套软件mycat_第4页
青橙项目配套软件mycat_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

海量数据的问GBTBPB。对数据的也是愈加的,传统的关系性数据库已经快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一。它通过降低数据的安全性,减少对事务的支但是,在有些场合NoSQL一些折衷是使用场景的,就比些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是的,所以还是需要使用关系性高查询性能将一个数据库的数据分散到不同的数据库中。什么是数据库分如何实现数据库分mycat。Mycat介什么Mycat背后是阿里曾经开源的知名产品——Cobar。Cobar的功能和优势是MySQLMysql很精通,后来从阿里跳槽了,阿里随后开源的Cobar,并维持到2013年年初,然后,就没有然后了。Cobar的思路路径的确不错。基于Java开发的,实现了MySQL公开的二进制传输协议,巧妙地将自己成一个MySQLServer,目前市面上绝大多数MySQL客户端工MycatcobarcobarNIO重构了Buffer内核,增强了聚合,Join等基本特性,同时兼容绝大多数数一个新颖的数据库中间件产品支持mysql集群,或者mariadbcluster,提供高可用性数据分片集群。你可以像使用mysql一样使用mycat。对于开发人员来说根本感觉不到mycat的Mycat支持的数据Mycat的分片策概念说逻辑库(schema)逻辑表一部分数据,所有分片构成了完整的数据。总而言之就是需要进行分片的表。,片表:一个数据库中并不是所有的表都很大,某些表是可以不用进行切分的片是,分片节点(dataNode节点主机(dataHost分片规则Mycat的及安安装环1、jdkjdk1.7及以上版本2、Mysqlmysql5.5以上版本Mycat的 安装步Mycat有windows、linux多种版本。本为linux安装步骤,windows基本相同。第一步:Mycat-server-xxxx-linux.tar.gz第二步:将压缩包解压缩。建议将mycat放到/usr/local/mycat 第三步:进入mycat ,启动mycatmycat支持令{console|start|stop|restart|status|dumpMycatMycat的默认 为Mycat的分需把商品表分片到三个数据节点上安装环境分mysqlhost1centos6.4数据库版本:mysql-5.6mycat版本:1.4release:db1、mysql2centos6.4数据库版本:mysql-5.6mycat版本:1.4release数据库名:db2MyCat1上(schema.xml4.3.1Schema.xml介绍Schema.xmlMyCatMyCatDataNodeDataSourceMyCat的前提。这里就一层层对该schema用于定义MyCat实例中的逻辑Table定义了MyCat中的逻辑dataNode定义了MyCat中的数据节点,也就是我们通常说所的数据分片dataHost在mycat逻辑库中也是作为最底层的存在,直接定义了具体的数据库实MySQLfmysqld]4.3.2Schema.xml配<?xml<?xml<!DOCTYPEmycat:schemaSYSTEM <schemaname="e3mall"checkSQLschema="false"<!--autoshardingbyid(long)--<tablename="tb_item"dataNode="dn1,dn2,dn3"rule="auto-sharding-<dataNodename="dn1"dataHost="localhost1"database="db1"<dataNodename="dn2"dataHost="localhost2"database="db2"<dataNodename="dn3"dataHost="localhost1"database="db3"<dataHostname="localhost1"maxCon="1000"minCon="10" <heartbeat>select<!--canhavemultiwritehosts--<writeHosthost="hostM1"url="192.168.25.134:3306"user="root"<!--canhavemultireadhosts--<dataHostname="localhost2"maxCon="1000"minCon="10" <heartbeat>select<heartbeat>select<!--canhavemultiwritehosts--<writeHosthost="hostM1"url="192.168.25.166:3306"user="root"<!--canhavemultireadhosts--Server.xml介server.xmlmycat需要的系统配置信息。最常用的是在此配置用户名、Server.xml配<user<user<property<property<propertyrule.xml里面就定义了我们对表进行拆分所涉及到的规则定义。我们可以灵活的对表使用不和function这两个。在具体使用过程中可以按照需求添加tableRule测试分创建mycat。使用mysqlmycat----TablestructureforDROPTABLEIFEXISTS`id`bigint(20)NOTNULLCOMMENTid,同时也是商品编号`title`varchar(100)NOTNULLCOMMENT商品标题`sell_point`varchar(500)DEFAULTNULLCOMMENT商品卖点`price`bigint(20)NOTNULLCOMMENT商品价格,单位为:分`num`int(10)NOTNULLCOMMENT库存数量'`image`varchar(500)DEFAULTNULLCOMMENT`cid`bigint(10)NOTNULLCOMMENT所属类目,叶子类目`status`tinyint(4)NOTNULLDEFAULT'1'COMMENT商品状态,1-正常,2-下架,3-删除`created`datetimeNOTNULLCOMMENT创建时间`updated`datetimeNOTNULLCOMMENT更新时间',PRIMARYKEY(`id`),KEYKEY`cid`KEY`status`KEY`updated`)插入数分片测longdatanodeid进行分片经测试id范围为: 以上的id插入错[Err]1064-can'tfindanyvaliddatanode:TB_ITEM->ID-Mycat读写分能。对于MySQL来说,标准的读写分离是主从模式,一个写节点Master后面跟着多个读节1-3个读节点的配置Mycatmysql的主从Mysql的主从1DBserverDBserver2DBserverDBserver3DBserver开启二进制日志,DBserverDBserverserver_idMysql主服务器配 f文件:mysqlservicemysqld第三步:建立帐户并mysql>GRANTFILEON*.*TO'backup'@'%'IDENTIFIEDBYmysql>GRANTREPLICATIONSLAVE,REPLICATIONCLIENTON*.*to'backup'@'%'identifiedby“%”IP192.168.145.226,加强安全。mysql>FLUSHmysqlmastermysql>showmaster | |Position|Binlog_Do_DB|Binlog_Ignore_DB|Executed_Gtid_Set |mysql-bin.000001 120| | | 1rowinMysql从服务器配第一步:修 f文 注意语句中间不要断开,master_port为mysql服务器端(无引号),master_user为执行120”无单引号(120showmasterstatus中看到的positionmysql-bin.000001file对应的值)。第二步:启动从服务器功第三步:检查从服务器功能状态mysql>showslave Slave_IO_Running:Yes//YES 注:Slave_IOSlave_SQLYES状态,否则都是错误的状态(如:其中NO均属错误)。ff删除Fatalerror:TheslaveI/OthreadstopsbecausemasterandslavehaveequalMySQLserverUUIDs;theseUUIDsmustbedifferentforreplicationtowork.Mycat配Mycat1.4支持MySQL主从状态绑定的读写分离机制,让读更加安全可靠,配置如下<dataNode<dataNodename="dn1"dataHost="localhost1"database="db1"<dataNodename="dn2"dataHost="localhost1"database="db2"<dataNodename="dn3"dataHost="localhost1"database="db3"<dataHost<dataHostname="localhost1"maxCon="1000"minCon="10"writeType="0"dbType="mysql"dbDriver="native"switchType="2"<heartbeat>showslave<writeHosthost="hostM"url="192.168.25.134:3306"user="root"<readHosthost="hostS"url="192.168.25.166:3306"password="root"balance="1writeType="0"Balancebalance=“0”,writeHostwriteType=“0”,writeHost“readHostwriteHostwriteHostwriteHostmycat1.3还能数据,则需要在Mycat里配置为两个writeHost并设置banlance=1。”switchType="2"slaveThreshold="100"switchType目前有三种选择:-1:表示不自动切:默认值,自动切:基于MySQL主从同步的状态决定“Mycatshowslavestatus,dataHost上定义两个新属性:switchType="2"与slaveThreshold="100",此时意味着开启MySQL主从状态绑定的读写分离与切换机制。Mycatshowslavestatus中的"Seconds_Behind_Master"Slave_IO_Running","Slave_SQL_Running"当前主从同步的状态以及Seconds_Behind_Master主从时延。“附:Centos6.5下安装mysqlrpm-qa|grepmysqlmysqlyumremovemysqlmysql-servermysql-libs rm-rf/var/lib/mysql 第三步安装mysql需要使用yum命令安装在安装mysql之前需要安装mysql的源。需要从oracle的。1)mysql的源包我们是centos6.4对应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论