MYCAT 入門(二)

一.下載和安裝

官網:http://www.mycat.io/

下載地址:http://dl.mycat.io/

使用介紹:https://github.com/MyCATApache/Mycat-Server/wiki

選擇對用的版本下載,這裏以 Mycat-server-1.6-RELEASE-20161028204710-win.tar.gz 爲例

沒有下載到的可以到我的雲盤下載,有1.6的windows,mac和linux版本

鏈接:https://pan.baidu.com/s/14_MK1hr7Im-nHJRJVWQJoA
提取碼:d9ud
 

1.mycat是基於java語言開發的,所以需要先安裝java環境;(這一步不介紹)

2.下載 Mycat-server-1.6-RELEASE-20161028204710-win.tar.gz 解壓到本地進入Mycat-server-1.6-RELEASE-20161028204710-win\mycat\bin 目錄

超級權限打開cmd,執行 mycat.bat instatll

安裝成功。

常用命令

二.配置使用

\Mycat-server-1.6-RELEASE-20161028204710-win\mycat\conf 下主要要配置這四個文件

  • server.xml  配置mycat的用戶登錄信息,以及用戶權限
  • schema.xml 配置分庫分表,邏輯庫與物理庫映射關係
  • rule.xml 配置分庫分表規則
  • wrapper.conf 配置環境信息

現在我們要用mycat做一個簡單的例子,在127.0.0.1:3306的一個實例上創建三個數據庫 db1,db2,db3,數據庫有一張goods商品表,要求通過商品表的自增主鍵去摸%3分配不同的數據到三個數據庫上;

  • 建庫建表
建庫:

create database db1 character set utf8;

create database db2 character set utf8;

create database db3 character set utf8;

建表:

CREATE TABLE `goods` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(64) NOT NULL,
  `price` decimal(10,0) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 

  • server.xml

配置邏輯庫與連接信息

<user name="root">
   <property name="password">123456</property>
   <property name="schemas">TESTDB</property>
</user>
  • schema.xml

配置需要分表,規則,以及邏輯庫和物理庫映射關係

<schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
		<!-- 表配置  dataNode 標識三個數據節點 rule分表的規則 這裏是按3去摸 0,1,2 -->
		<table name="goods" primaryKey="id" autoIncrement="true"  dataNode="dn1,dn2,dn3" rule="mod-long" />
		
	</schema>
	<!-- 節點配置 節點對用的物理機器  及 數據庫 -->
	<dataNode name="dn1" dataHost="dataHost1" database="db1" />
	<dataNode name="dn2" dataHost="dataHost1" database="db2" />
	<dataNode name="dn3" dataHost="dataHost1" database="db3" />
	
	<!-- 物理機器配置 -->
	<dataHost name="dataHost1" 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="127.0.0.1:3306" user="root"
				   password="admin123">
		</writeHost>
	</dataHost>
  • 啓動mycat

啓動成功,說明配置也正確了;

然後我們就可以像連接mysql一樣的方式,連接到mycat,對數據進行操作了;

mysql -uroot -p123456 -h127.0.0.1 -P8066 

mycat默認連接端口是8066

連接後,我們只能看到一個邏輯庫TESTDB

現在對數據庫進行insert操作,查看效果;

插入6條數據

insert into goods (id,name,price) values (1,'11',11);
insert into goods (id,name,price) values (2,'11',11);
insert into goods (id,name,price) values (3,'11',11);
insert into goods (id,name,price) values (4,'11',11);
insert into goods (id,name,price) values (5,'11',11);
insert into goods (id,name,price) values (6,'11',11);

分別查看我們的db1,db2,db3,可以發現6條數據已經被分到了三個數據庫中

explain select * from goods;

 

查詢數據的時候,可以看到sql被分發到dn1,dn2,dn3三個節點去執行

至此我們的mycat入門級教程已經學會了,是不是很簡單呢

下一篇 將會對配置詳解先進行個分析;

一起成長,一起學習,記得點關注哦

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章