【Mycat】Mycat故障轉移之writetype與switchtype
1.配置檔案如下:
-
<dataHost name="localhost1" maxCon="1000" minCon="10" balance="2"
-
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.6.121:3306" user="root"
-
password="ESBecs00">
-
<!-- can have multi read hosts -->
-
</writeHost>
-
-
-
<writeHost host="hostS1" url="192.168.6.121:3307" user="root"
-
password="ESBecs00">
-
<!-- can have multi read hosts -->
-
</writeHost>
- </dataHost>
writeType屬性
-
負載均衡型別,目前的取值有3種:
-
1. writeType="0", 所有寫操作傳送到配置的第一個writeHost,第一個掛了切到還生存的第二個writeHost,重新啟動後已切換後的為準,切換記錄在配置檔案中:dnindex.properties .
-
2. writeType="1",所有寫操作都隨機的傳送到配置的writeHost。
- 3. writeType="2",沒實現。
switchtype屬性如下(控制自動切換的)
![](https://i.iter01.com/images/63d68b18a1cec9871d0b74d59cf8a051be8980a21e7c93ff1c73bfcc505f3c66.png)
2 模擬資料庫down機
-
2.1 主庫down機
-
[root@localhost ~]# /etc/init.d/mysql stop
Shutting down MySQL.... [確定]
-
-
2.2 mycat插入資料
-
mysql> insert into zs values (2),(3);
Query OK, 2 rows affected (0.00 sec)
Records: 2 Duplicates: 0 Warnings: 0
-
-
2.3 檢視備庫
-
mysql> select * from zs;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
+------+
3 rows in set (0.00 sec)
資料傳送至備庫,可見已切換成功 -
-
2.4 主庫恢復
-
[root@localhost ~]# /etc/init.d/mysql start
Starting MySQL. [確定]
-
2.5 再次插入資料,並檢視從和主
-
mycat> insert into zs values (4),(5);
-
-
從上:mysql> select * from zs;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+------+
-
主上:mysql> select * from zs;
+------+
| id |
+------+
| 1 |
+------+
1 row in set (0.00 sec)
- 透過上面的步驟可以發現,主庫down掉後 就以從庫為準了,就算主庫恢復了,還是以從庫為準,所以搭個雙主是最好的解決辦法
- 可以看下切換的記錄檔案
-
[root@localhost conf]# more dnindex.properties
#update
#Fri Apr 21 13:40:09 CST 2017
localhost3=0
localhost2=0
localhost1=1 ###使用第二個writehost
- 將新的主庫down機 再恢復,又切換回原主庫了
-
[root@localhost conf]# more dnindex.properties
#update
#Fri Apr 21 13:56:09 CST 2017
localhost3=0
localhost2=0
localhost1=0 ###使用第一個writehost
#這0和1代表的就是寫入時使用第幾個writehost的意思了
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29096438/viewspace-2137743/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Mycat】Mycat核心開發者帶你輕鬆掌握Mycat路由轉發!!路由
- Mycat監控工具Mycat-webWeb
- MyCat入門篇-什麼是MyCat
- 【Mycat】Mycat核心開發者帶你看盡Mycat三大核心配置檔案
- 【Mycat】作為Mycat核心開發者,怎能不來一波Mycat系列文章?
- Linux MySQL分庫分表之MycatLinuxMySql
- MyCAT中的DDL
- Mycat水平分表
- .netcore微服務-MycatNetCore微服務
- MyCat的快速搭建
- Mycat垂直分庫
- 1、MyCat入門
- Mycat問題規避
- Mycat2 安裝
- docker中安裝mycatDocker
- Mycat Web監控工具Web
- Mycat分庫分表(一)
- mycat配置分庫分表
- Mycat分庫分表配置
- mycat分片及主從(二)
- redis健康檢查與故障轉移Redis
- Mycat中的特性----資料分片
- MySQL運維5-Mycat配置MySql運維
- mycat 水平切分|垂直切分|ER分片
- mysql學習筆記之快速搭建PXC叢集(Mycat分片)MySql筆記
- MyCAT原始碼分析——分析環境部署原始碼
- MySQL運維4-Mycat入門MySql運維
- mycat和sharding JDBC分庫分表JDBC
- MySQL運維12-Mycat分庫分表之按天分片MySql運維
- MyCat分庫分表、讀寫分離
- Mycat分片方案需要解決的問題
- MySQL運維6-Mycat垂直分庫MySql運維
- MySQL運維7-Mycat水平分表MySql運維
- MySQL運維11-Mycat分庫分表之應用指定分片MySql運維
- Mysql讀寫分離叢集的搭建且與MyCat進行整合MySql
- MySQL運維8-Mycat範圍分表MySql運維
- MyCat資料庫的基礎配置及使用資料庫
- Mycat 雙主雙從-負載均衡-高可用負載
- Mysql MHA部署-05故障轉移MySql