Mycat简介以及安装

Posted 我是程序员却想改变世界

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mycat简介以及安装相关的知识,希望对你有一定的参考价值。

举个例子,对于mysql来说,Mycat其实就是一个Mysql的服务器,这个服务器所连接的就是mysql的存储引擎,就是说,Mycat本身并不会去存储数据,只是作为一个媒介存在,简单的说,Mycat就是对数据库能力的一个强化工具。


对于Mycat的理解,不同的身份可以有不同的解释


软件工程师会这么理解:


Mycat其实就相当于一个Mysql的数据库服务器,连接方式也和连接mysql差不多(当然端口是不一样的,不过也是对默认端口而言,Mycat的默认端口是8066)


架构师会这么理解:


Mycat就是一个中间件,可以帮助完成分库分表、读写分离、备份等。


1.Mycat原理


Mycat的原理归结起来可以总结为一个词“拦截”,当java代码发送一个SQL语句,Mycat会对这个语句做分析:包括路由、分片、读写分离、缓存等分析,然后,才会将这个语句发往真正的数据库,然后数据库返回数据给Mycat,Mycat会对数据做一定的分析,然后才会把结果返回给java代码。


原理说起来很简单,但是要实现这个拦截,其实也是很难的。


2.Mycat安装


mycat资源可以在mycat的github上找到:https://github.com/MyCATApache/Mycat-download



Mycat简介以及安装

下载完成后,解压,然后将解压后的文件转移到指定的目录,推荐目录为/usr/local/Mycat


于目录的具体功能为:bin为可执行文件目录,conf为配置文件目录,lib为一些必要的依赖目录,log则是存放日志文件的目录。



在使用之前,我们还需要先配置两个文件,分别为:schema.xml和server.xml



说明:在schema.xml文件中,标签<schema>为客户端所见,就是说,客户端所看到的数据库为TESTDB,所看到的表为:company以及

goods


其中compay映射在分片dn1 和 dn2上 ,goods映射在分片dn1和dn2上


分片dn1 在名称为localhost1的机器上,数据库的名称为db1

分片dn2 在名称为localhost1的机器上,数据库的名称为db2


名称为localhost1的机器的真实ip为url所指的ip以及端口上。


注,以上操作必须在数据库上手动创建所需的数据库,不然在启动的时候则会报错。



接下来就可以启动进行测试了,启动的命令为,进入bin目录:

./mycat start/stop/restart/status

然后就可以进行连接使用了


以上就是所有关于Mycat安装的内容,后续的关于Mycat的文章还会继续更新


以上是关于Mycat简介以及安装的主要内容,如果未能解决你的问题,请参考以下文章

MyCat的搭建

linux中mycat的配置,分片,以及主从复制

mycat安装

Mycat的搭建以及配置与启动

mycat的相关操作

Mycat