【mycat】简介及安装

一、简介

1.mycat是什么?

Mycat 是数据库中间件。中间件是一类连接软件组件和应用的计算机软件, 以便于软件各部件之间的沟通。tomcat和web都是中间件。而数据库中间件是连接java应用程序和数据库。它支持MySQL ORACLE SQLServer等一些主流的数据库。

2.为什么要用mycat?

现在互联网行业飞速发展,数据的量级也是指数级的增长。在这种情况下,对数据的各种操作也是更加困难。一般的关系型数据库已经无法满足快速查询和插入数据的需求了。Mycat能满足数据库数据大量存储,提高了查询性能。

3.核心技术(分库分表)

数据库分片指:通过某种特定的条件,将我们存放在一个数据库中的数据分散存放在不同的多个数据库(主机)中,这样来达到分散单台设备的负载,根据切片规则,可分为以下两种切片模式---垂直分库,水平分表

二、Mycat安装

1.准备

  • jdk:要求jdk必须是1.7及以上版本   
  • 系统:CentOS7
  • Mysql:推荐mysql是5.5以上版本     
  • Mycat: 

Mycat的官方网站:http://www.mycat.org.cn/     

下载地址:  https://github.com/MyCATApache/Mycat-download 

百度网盘是我自己安装的版本

链接:https://pan.baidu.com/s/1nthwKUde3d7MPsh6O6xDoA 

提取码:316g

2.安装

1.用xftp将安装包放到opt目录下, 解压缩文件拷贝到 linux 下 /usr/local/

在opt目录下执行两个命令

tar -zxvf Mycat-server-1.6.7.1-release-20190627191042-linux.tar.gz
cp -r mycat /usr/local/

 3.启动(修改server.xml和schema.xml)

打开mycat安装目录

cd /usr/local/mycat

1) 修改配置文件server.xml

#打开配置文件所在的文件夹
cd conf/
#修改用户信息,和mysql区分
vim server.xml

在配置文件中找到,原来是name=“root”,将他改为mycat 

保存退出;

2)修改schema.xml

删除<schema>标签间的表信息, <dataNode>标签只留一个, <dataHost>标签只留一个, <writeHost><readHost>留一对。一个写主机,一个读主机(读写分离)。两台mysql服务器的关系是一主一从。

一主一从mysql安装过程如下:

https://blog.csdn.net/wangyunzhao007/article/details/107284831

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

	<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
	</schema>
	<dataNode name="dn1" dataHost="host1" database="zhao" />
	<dataHost name="host1" 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="192.168.157.130:3306" user="root"
				   password="123456">
			<!-- can have multi read hosts -->
			<readHost host="hostS1" url="192.168.157.129:3306" user="root" password="123456" />
		</writeHost>
	</dataHost>
</mycat:schema>

 然后保存退出;

3)验证数据库的访问情况

mysql -uroot -p123456 -h 192.168.157.129 -P 3306
mysql -uroot -p123456 -h 192.168.157.130 -P 3306

连接好以后,我们就可以启动mycat了。 

4)启动程序

cd /usr/local/mycat/bin/

控制台启动

./mycat console

成功了如下: 

后台启动

./mycat start

3.登录 

登录后台管理窗口--用来维护和管理mycat

#端口固定,ip为安装mycat机器的ip
mysql -umycat -p123456 -P 9066 -h 192.168.157.129

登录数据窗口--连接数据库,查询数据

#端口固定,ip为安装mycat机器的ip
mysql -umycat -p123456 -P 8066 -h 192.168.157.129

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
它是一个开源的分布式数据库系统,是一个实现了 MySQL 协议的的 Server,前端用户可以把它看作是一个数据库代理,用 MySQL 客户端工具和命令行访问,而其后端可以用 MySQL 原生(Native)协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信, 其核心功能是分表分库,即将一个大表水平分割为 N 个小表,存储在后端 MySQL 服务器里或者其他数据库里。 Mycat 发展到目前的版本,已经不是一个单纯的 MySQL 代理了,它的后端可以支持 MySQL、SQL Server、 Oracle、DB2、PostgreSQL 等主流数据库,也支持 MongoDB 这种新型 NoSQL 方式的存储,未来还会支持更 多类型的存储。而在最终用户看来,无论是那种存储方式,在 Mycat 里,都是一个传统的数据库表,支持标准的 SQL 语句进行数据的操作,这样一来,对前端业务系统来说,可以大幅降低开发难度,提升开发速度,在测试阶 段,可以将一个表定义为任何一种 Mycat 支持的存储方式,比如 MySQL 的 MyASIM 表、内存表、或者 MongoDB、LevelDB 以及号称是世界上最快的内存数据库 MemSQL 上。试想一下,用户表存放在 MemSQL 上, 32 大量读频率远超过写频率的数据如订单的快照数据存放于 InnoDB 中,一些日志数据存放于 MongoDB 中,而且 还能把 Oracle 的表跟 MySQL 的表做关联查询,你是否有一种不能呼吸的感觉?而未来,还能通过 Mycat 自动 将一些计算分析后的数据灌入到 Hadoop 中,并能用 Mycat+Storm/Spark Stream 引擎做大规模数据分析,看 到这里,你大概明白了,Mycat 是什么?Mycat 就是 BigSQL,Big Data On SQL Database。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值