日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Mycat

發布時間:2024/5/24 综合教程 46 生活家
生活随笔 收集整理的這篇文章主要介紹了 Mycat 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

視頻地址

Mycat

第一章 入門概述

1.1 是什么

Mycat是數據中間件

數據庫中間件
中間件:是一類連接軟件組件和應用的計算機軟件,以便于軟件各部分之間的溝通.
例子:tomcat,web中間件.
數據中間件:連接 java應用程序和數據庫
數據庫中間件對比
數據庫中間件(天上飛的理念,地上落地的實現)
- cobar:阿里團隊開發,已多年無維護更新
- mycat:基于 cobar二次開發 開源社區維護
- OneProxy:不開源的商業中間件
- kingshard:go語言開發,在不斷完善
- Vitess:YouTube生產在使用,不支持 MySQL原生協議
- Atlas: 360團隊基于 mysqlproxy改寫,高并發不穩定
- MaxScale: maxScale是 mariadb研發的中間件
- MySQLRoute: MySQLRoute 是MySQL官方 Oracle公司發布的中間件

Cobar 屬于 阿里 B2B事業群,始于 2008,在阿里服役3年多,接管 3000+ MySQL數據的 shema,集群日處理在線 sql請求50億次以上.由于 Cobar發起人離職,Cobar停止維護.
Mycat 是開源社區在阿里 cobar基礎上進行二次開發,解決了 cobar存在的問題,并且加入了許多新的功能在其中.青出于藍而勝于藍.
OneProxy 基于 MySQL官方 proxy思想利用 c進行開發的,OneProxy是一款商業收費的中間件.舍棄了一些功能,專注在性能和穩定性上.
kingshard 由小團隊用 go語言開發,還需要發展,需要不斷完善.
Vistess 是 YouTube生產在使用,架構很復雜.不支持 MySQL原生協議,使用大量改造成本
Atlas 是 360團隊基于 mysqlproxy改寫,功能還需完善,高并發下不穩定.
MaxSale 是 mariadb(MySQL原作者維護的一個版本)研發的中間件

mycat的官網
http://www.mycat.org.cn/

1.2 干什么的

讀寫分離


數據分片
垂直拆分(分庫),水平拆分(分表),垂直+水平拆分(分庫分表)


多數據源整合

1.3 原理

Mycat 的原理最重要的一個動詞時 "攔截" ,他攔截了用戶發送過來的 sql語句,首先對 sql語句做了一些特定的分析,如分片分析,路由分析,讀寫分離分析,緩存分析等,然后將從 sql發往后端的真是數據庫,并返回的結果做適當的處理,最終返回給用戶.

這種方式把數據庫的分布式從代碼中解耦出來,程序員察覺不出來后臺 使用 Mycat還是 Mysql.

第二章 安裝啟動

2.1 安裝


0. 去官網下載,放到 /opt 目錄下,執行
tar -zxvf Mycat-server-1.6.7.6-release-20210930213049-linux.tar.gz

加壓后即可使用: 解壓縮文件拷貝到 Linux寫 /usr/local/
cp -r mycat /usr/local/
三個配置文件
schema.xml : 定義邏輯庫,表,分片節點等內容
rule.xml : 定義分片規則
server.xml : 定義用戶以及系統相關便令,如端口等.

2.2 啟動

修改配置文件 server.xml
修改用戶信息,與 mysql區分,如下

修改配置文件 schema.xml
刪除 <schema>標簽的表信息 <dataNode>標簽只留一個, <dataHost> 標簽只留一個, <writeHost> <readHost> 只留一對

驗證數據庫的訪問情況
mycat 作為數據中間件要和數據庫部署在不同機器上,所以要驗證遠程訪問情況.

mysql -uroot -proot -h 192.168.217.13 -P3306
mysql -u用戶名 -p密碼 -h ip地址 -P端口號

啟動程序

控制臺: 去 mycat/bin 目錄下執行 ./mycat console
后臺啟動: 去 mycat/bin 目錄下 ./mycat start

六個特殊目錄不需要 加點斜杠的 bin ; usr/bin ; usr/local/bin ; sbin ; usr/sbin ; usr/lcoal/sbin

啟動時可能出現報錯
如果操作系統時 centos6.8,可能會出現域名解析失敗錯誤

可以按照一些步驟解決

用 vim 修改 /etc/hosts 文件,在 127.0.0.1 后面增加你的機器名

修改后重新啟動網絡服務

2.3 登錄

登錄后臺管理窗口
此登錄方式用于管理維護 Mycat
mysql -u用戶 -p密碼 -P 端口號 -h ip地址

登錄數據窗口
此登錄方式用于通過 Mycat查詢數據,我們選擇這種方式訪問 mycat
mysql -u用戶 -p密碼 -P 端口號 -h ip地址

第三章 搭建讀寫分離

我們通過 Mycat 和 Mysql 的主從復制配合搭建數據的讀寫分離,實現 myslq 的高可用性.我們將搭建:
一主一叢,雙主雙從兩種讀寫分離模式

3.1 一主一從

一個主機用于處理所有寫請求,一臺從機負責所有讀請求,架構圖如下

搭建 MySql數據庫主從復制

MySQL 主從復制原理

主機配置

3.2 雙主雙從

第四章 垂直拆分

4.1 如何劃分表

4.2 配置分庫

第五章 水平拆分

5.1 配置分表

總結

以上是生活随笔為你收集整理的Mycat的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。