IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MyCat (一) --------- MyCat 概述 -> 正文阅读

[大数据]MyCat (一) --------- MyCat 概述


一、MyCat 背景

MyCat 的前身是阿里巴巴大名鼎鼎的Cobar,Cobar 在开源了一段时间后,就没有再维护了,阿里巴巴放弃了该项目,再加上Cobar在使用过程中也发现存在一些问题。

2013 年国内一批开源软件爱好者对 Cobar 这个项目进行了改进,并命名为MyCat,这就是MyCat的诞生。

MyCat 是完全免费开源的,不属于任何商业公司。
MyCat 于 2014 年首次在上海的《中华架构师》大会上对外宣讲,随后越来越多的项目采用了Mycat。

截至2015年11月,超过300个项目采用 MyCat,涵盖银行、电信、电子商务、物流、移动应用、O2O的众多领域和公司。

MyCat官网:http://www.mycat.io/

二、MyCat 是什么

MyCat 是一个开源数据库中间件,是一个实现了 MySQL协议的的数据库中间件服务器,我们可以把它看作是一个数据库代理,用 MySQL 客户端工具和命令行访问MyCat,而 MyCa t再使用 MySQL原生(Native) 协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信,包括 SQL Server、Oracle、DB2、PostgreSQL 等主流数据库,也支持 MongoDB 这种新型 NoSQL 方式的存储,未来还会支持更多类型的存储。

一般地,MyCat 主要用于代理 MySQL 数据库,虽然它也支持去访问其他类型的数据库。

MyCat的默认端口是 8066,一般地,我们可以使用常见的对象映射框架比如 MyBatis 操作 MyCat。

三、MyCat 主要能做什么

1. 数据库的读写分离

通过 MyCat 可以自动实现写数据时操作主数据库,读数据时操作从数据库,这样能有效地减轻数据库压力,也能减轻IO压力。

实现读写分离,当主出现故障后,MyCat 自动切换到另一个主上,进而提供高可用的数据库服务,当然我们需要部署多主多从的模式。

在这里插入图片描述
如果有了 MyCat,客户端直接连接 MyCat,可以实现读写分离,如果主出现问题,会自动切换到从服务器上。

2. 数据库分库分表

分库分表指的是对数据库数据的拆分,分为两种 :水平拆分和垂直拆分

(1) 水平切分 (横向切分)

根据表中数据的逻辑关系,将同一个表中的数据按照某种条件拆分到多台数据库服务器上面

(2) 垂直切分 (纵向切分)

按照不同的表来切分到不同的数据库服务器之上

3. 结论

  • 性能有瓶颈了,可以读写分离

  • 数据库容量有瓶颈了,可以分库分表

四、MyCat 环境搭建

1. 下载

http://dl.mycat.io/1.6-RELEASE/

我们将下载好的 MyCat 压缩包直接上传到 Linux 上

在这里插入图片描述

2. 解压

在这里插入图片描述

Java 语言开发的,直接解压即可使用

类似 :Tomcat、ZooKeeper、ActiveMQ、Mycat

五、MyCat 日常管理

A、启动

切换到 MyCat 的 bin 路径下,执行
./mycat start

B、关闭

切换到mycat的bin路径下,执行

./mycat stop

C、命令行

登录 MyCat 命令行,使用 MySQL 的命令行工具来操作的:

./mysql -umycat -p -P8066 -h127.0.0.1

MyCat 默认数据访问端口是 8066

4. 配置文件

(1) server.xml

主要用于配置 MyCat 需要的服务器信息

常用配置:

  • 配置序列生成方式
  • 配置 MyCat 逻辑数据库
  • 配置 MyCat 的访问账户和密码

(2) schema.xml

用于配置的逻辑数据库的映射、表、分片规则、数据结点及真实的数据库信息。

常用配置:

  • 配置逻辑库映射
  • 配置垂直切分的表
  • 配置真实的数据库
  • 配置读写结点
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-06-01 15:18:23  更:2022-06-01 15:20:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 19:43:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码