共計 2272 個字符,預計需要花費 6 分鐘才能閱讀完成。
這篇文章主要為大家展示了“如何使用 MySQL Fabric 實現高可用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領大家一起研究并學習一下“如何使用 MySQL Fabric 實現高可用”這篇文章吧。
一、下載和安裝 MySQL Fabric
從 http://dev.mysql.com/downloads/utilities/ 下載 MySQL Utilities 1.5,MySQL Fabric 是 MySQL Utilities 1.5 的一部分。
從 http://dev.mysql.com/downloads/connector/j/ 下載 java connector,5.1.30 和之后的版本支持 MySQL Fabric。
二、創建 MySQL 用戶
需要為 MySQL Fabric 在每個 MySQL 實例上創建用戶。在集群實例上創建用戶過程中需要關閉 bin log,否則 MySQL
Fabric 創建主從關系的時候會在 slave 上重新執行 master 中創建同一用戶的操作而導致出錯。以下示例中假設 MySQL
Fabric 和 backing store 實例安裝在同一臺服務器中:
在 backing store 實例上創建 store user,將下面代碼中的 fabric_store 和 secret_store 替換為合適的用戶名和密碼。
CREATE USER fabric_store @ localhost
在每個集群實例上創建 server user,將下面代碼中的 fabric_server 和 secret_server 替換為合適的用戶名和密碼。
CREATE USER fabric_server @ %
在每個集群實例上創建 backup user,將下面代碼中的 fabric_backup 和 secret_backup 替換為合適的用戶名和密碼。
CREATE USER fabric_backup @ %
在每個集群實例上創建 restore user,將下面代碼中的 fabric_restore 和 secret_restore 替換為合適的用戶名和密碼。
CREATE USER fabric_restore @ %
三、配置 MySQL
在每個集群實例中啟用 gtid-mode, bin-log 和 log-slave-updates,并確保所有集群實例的 server-id 都不重復。
[mysqld]
四、配置和初始化 MySQL Fabric
修改 /etc/mysql/fabric.cfg 中的 [storage]
和 [servers] 段,配置 store user, server user, backup user 和 restore user 的用戶和密碼。
[storage]
執行 mysqlfabric manage setup 初始化 store server,執行過程中需要設置 admin/xmlrpc 的密碼,這個密碼是使用用戶名 admin 訪問 MySQL Fabric 時使用的密碼。可以將這個密碼配置到 fabric.cfg 中 [protocol.xmlrpc] 段的 password 中,否則后面每次執行 MySQL Fabric 命令都會提示輸入這個密碼。
五、啟動和停止 MySQL Fabric
執行 mysqlfabric manage start 啟動 MySQL Fabric。
執行 mysqlfabric manage stop 停止 MySQL Fabric。
六、創建服務器組
執行 mysqlfabric group create my_group 創建服務器組,其中 my_group 為組名。
執行 mysqlfabric group add my_group master_server:port 添加主服務器,其中 master_server:port 為主服務器的 IP 和端口。
執行 mysqlfabric group promote my_group 將主服務器提升為服務器組的 master。
執行 mysqlfabric group add my_group slave_server:port 添加從服務器,其中 slave_server:port 為從服務器的 IP 和端口,添加之后從服務器會自動同步主服務器上已經寫入 bin log 的數據。
執行 mysqlfabric group activate my_group 激活故障自動切換。
mysqlfabric group lookup_servers ys_group
七、錯誤恢復
服務器出現故障之后,MySQL Fabric 中會將其標記為 FAULTY 狀態,在服務器恢復之后狀態不會自動恢復,需要人工將出錯的服務器從組中移除再重新加入。
`shell mysqlfabric group remove my_group server:port`
八、使用 Java connector 連接到 MySQL Fabric
以 Tomcat datasource 配置為例,從直接連接切換成通過 MySQL Fabric 連接 MySQL 只需修改 driverClassName 和 url:
driverClassName= com.mysql.fabric.jdbc.FabricMySQLDriver
其中 localhost:32274 是 MySQL Fabric 的服務地址,fabricUsername 和 fabricPassword 是 MySQL Fabric 的用戶名和密碼,database 是默認數據庫名稱,fabricServerGroup 是服務器組名稱。
以上是“如何使用 MySQL Fabric 實現高可用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!