• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    MySQL原生HA方案–Fabric感受之旅

    來源:懂視網 責編:小采 時間:2020-11-09 13:31:46
    文檔

    MySQL原生HA方案–Fabric感受之旅

    MySQL原生HA方案–Fabric感受之旅:MySQL原生HA方案 – Fabric體驗之旅 關鍵字:MySQL原生HA方案 – Fabric體驗之旅 tag:云計算MySQL FabricHA方案. 轉自:http://www.csdn.net/article/2014-08-20/2821300 摘要:眾所周知,Fabric能提供MySQL的HA和Sharding方案
    推薦度:
    導讀MySQL原生HA方案–Fabric感受之旅:MySQL原生HA方案 – Fabric體驗之旅 關鍵字:MySQL原生HA方案 – Fabric體驗之旅 tag:云計算MySQL FabricHA方案. 轉自:http://www.csdn.net/article/2014-08-20/2821300 摘要:眾所周知,Fabric能提供MySQL的HA和Sharding方案

    MySQL原生HA方案 – Fabric體驗之旅 關鍵字:MySQL原生HA方案 – Fabric體驗之旅 tag:云計算MySQL FabricHA方案. 轉自:http://www.csdn.net/article/2014-08-20/2821300 摘要:眾所周知,Fabric能提供MySQL的HA和Sharding方案,但是并沒有具體的介紹其具體的

    MySQL原生HA方案 – Fabric體驗之旅
    關鍵字:MySQL原生HA方案 – Fabric體驗之旅
    tag:云計算MySQL FabricHA方案.

    轉自:http://www.csdn.net/article/2014-08-20/2821300

    摘要:眾所周知,Fabric能提供MySQL的HA和Sharding方案,但是并沒有具體的介紹其具體的表現和搭建部署流程。筆者所在團隊親身體驗了此過程,雖然過程簡單但是卻充滿著無窮的樂趣,也為未來的應用帶來了福音。


    還在為MySQL HA方案的選型頭疼嗎?現在不用了,自從2014年5月28日Oracle發布Fabric之后,一切都變得如此簡單。因為是原生的官方產品,可以放心使用,由于這款產品大力的增強了HA效率,可以看出Oracle對云計算的支持力度,說明Oracle這個大象也可跳舞,而且還挺靈活的。

    官方對Fabric的介紹主要是它提供了MySQL的HA和Sharding方案,本文主要討論Fabric在MySQL HA方面的表現以及搭建部署流程。我的團隊試著搭建了一下,簡直無法再簡單了,這對于DBA來說絕對是一個大福音,這個產品在接下來的幾年中必然會被大量應用到生產環境中去,我的團隊對這個產品的未來充滿信心。

    接下來我們將循序漸進的帶領大家感受Fabric帶來的樂趣。

    一、實驗環境

    本例的實驗環境是在一臺CentOS主機中做的,機器上有3個MySQL實例,分別是3306、3691和3692,我們要做的就是用這3個實例達成HA效果


    二、下載

    Fabric目前是被打包到了MySQL Utilities中,所以大家下載MySQL Utilities就可以了,下載地址是: http://dev.mysql.com/downloads/utilities/,目前版本是:1.4.4,在本例中我們下載的是 mysql-utilities-1.4.4-1.el6.noarch.rpm。

    三、安裝MySQL Utilities

    rpm包的安裝還是挺簡單的,具體如下:

    rpm -ivh mysql-utilities-1.4.4-1.el6.noarch.rpm
    Preparing... ########################################### [100%]
    1:mysql-utilities ########################################### [100%]
    [root@

    裝完后執行

    mysqlfabric

    如果有回顯說明安裝完畢。

    四、建立Backing Store帳號

    Backing Store用于存儲整個HA集群的服務器等相關配置,它需要一個MySQL實例來存儲這些信息,這個實例的版本需要跟其它在HA中的MySQL實例版本保持一致,而且必須是5.6.10及更高的版本,我們在本例中選擇3306實例來使用。

    首先,你需要一個帳號來連接Backing Store的MySQL實例,這個帳號需要有對fabric數據庫的管理員級權限,我們在3306端口的實例上建帳號,具體如下:

    CREATE USER 'fabric'@'10.165.17.175' IDENTIFIED BY 'secret';
    GRANT ALL ON fabric.* TO 'fabric'@'10.165.17.175';


    五、Fabric配置文件

    Fabric配置文件默認位置是:/etc/mysql/fabric.cfg

    修改其中的[storage]部分,具體如下:

    [storage]
    auth_plugin = mysql_native_password
    database = fabric
    user = fabric
    address = 10.165.17.175:3306
    connection_delay = 1
    connection_timeout = 6
    password = secret
    connection_attempts = 6

    其中address = 10.165.17.175:3306是Backing Store的MySQL實例,password = secret是上一步中建立連接fabric數據庫的用戶密碼。

    修改其中的[servers]部分,具體如下:

    [servers]
    password = secret
    user = fabric


    其中是password = secret 是HA環境中各實例的連接密碼。

    六、填充Backing Store信息

    我們通過Fabric來填充3306端口實例中的fabric數據庫,具體如下:

    mysqlfabric manage setup
    [INFO] 1408115689.486792 - MainThread - Initializing persister: user (fabric), server (10.165.17.175:3306), database (fabric).
    Finishing initial setup
    =======================
    Password for admin user is not yet set.
    Password for admin/xmlrpc:
    Repeat Password:
    Password set.

    操作期間會提示Fabric的管理員帳戶admin沒有設置密碼,咱們按提示將密碼設置成admin就可以了。

    我們再查看3306端口的實例里面發生了什么變化,具體如下:

    mysql> show databases;
    +--------------------+
    | Database |
    +--------------------+
    | information_schema |
    | 51linux.net |
    | fabric |
    | mysql |
    | performance_schema |
    +--------------------+
    5 rows in set (0.00 sec)

    mysql>


    可以看到多了一個fabric數據庫,它里面存儲的就是Fabric的一些配置信息。

    七、配置HA中主從MySQL節點帳號

    本例中3691和3692實例是需要做成HA的,它們也要建個管理員權限的帳號,注意,帳號名也要跟3306實例保持一致,也需要是fabric,具體如下:

    CREATE USER 'fabric'@'10.165.17.175' IDENTIFIED BY 'secret';
    GRANT ALL ON *.* TO 'fabric'@'10.165.17.175';


    同時,由于fabric是基于GTID主從復制,所以這些實例中必須要啟用GTID,它們的配置文件要有這些參數:

    log-bin
    gtid-mode=ON
    enforce-gtid-consistency
    log_slave_updates


    八、啟動fabric

    我們用下面的命令來啟動fabric:

    mysqlfabric manage start
    [INFO] 1408116209.229260 - MainThread - Initializing persister: user (fabric), server (10.165.17.175:3306), database (fabric).
    [INFO] 1408116209.233982 - MainThread - Loading Services.
    [INFO] 1408116209.253620 - MainThread - Fabric node starting.
    [INFO] 1408116209.261853 - MainThread - Starting Executor.
    [INFO] 1408116209.262001 - MainThread - Setting 5 executor(s).
    [INFO] 1408116209.262691 - Executor-0 - Started.
    [INFO] 1408116209.264825 - Executor-1 - Started.
    [INFO] 1408116209.266648 - Executor-2 - Started.
    [INFO] 1408116209.268395 - Executor-3 - Started.
    [INFO] 1408116209.269961 - MainThread - Executor started.
    [INFO] 1408116209.273374 - MainThread - Starting failure detector.
    [INFO] 1408116209.274144 - Executor-4 - Started.
    [INFO] 1408116209.275816 - XML-RPC-Server - XML-RPC protocol server ('127.0.0.1', 32274) started.
    [INFO] 1408116209.276112 - XML-RPC-Server - Setting 5 XML-RPC session(s).
    [INFO] 1408116209.276654 - XML-RPC-Session-0 - Started XML-RPC-Session.
    [INFO] 1408116209.278426 - XML-RPC-Session-1 - Started XML-RPC-Session.
    [INFO] 1408116209.280368 - XML-RPC-Session-2 - Started XML-RPC-Session.
    [INFO] 1408116209.281599 - XML-RPC-Session-3 - Started XML-RPC-Session.
    [INFO] 1408116209.282699 - XML-RPC-Session-4 - Started XML-RPC-Session.


    九、建立HA服務器組

    這個HA服務器組,用于把參與HA的所有MySQL實例都填加進來:

    mysqlfabric group create my_group
    Password for admin:
    Procedure :
    { uuid = 292621fd-cddc-4cbb-8c0d-d8a264156679,
    finished = True,
    success = True,
    return = True,
    activities =
    }


    這樣我們就創建了一個組名為my_group的HA服務器組。

    十、填加HA組的成員

    我們首先填加3691,具體如下:

    mysqlfabric group add my_group 10.165.17.175:3691
    Password for admin:
    Procedure :
    { uuid = 8d1c11f8-adc4-4321-8307-6296caeb07c1,
    finished = True,
    success = True,
    return = True,
    activities =
    }


    接下來填3692,具體如下:

    mysqlfabric group add my_group 10.165.17.175:3692
    Password for admin:
    Procedure :
    { uuid = b1fa3cb9-b86f-4b1a-88cb-e84babb2ab02,
    finished = True,
    success = True,
    return = True,
    activities =
    }


    如果屏幕回顯示無error,那么說明成功填加了成員。我們也可以查看一下my_group里面的成員信息,具體如下:

    mysqlfabric group lookup_servers my_group
    Password for admin:
    Command :
    { success = True
    return = [{'status': 'SECONDARY', 'server_uuid': '6914a176-2370-11e4-af48-00163e004141', 'mode': 'READ_ONLY', 'weight': 1.0, 'address': '10.165.17.175:3691'}, {'status': 'SECONDARY', 'server_uuid': 'a8a69428-2366-11e4-af09-00163e004141', 'mode': 'READ_ONLY', 'weight': 1.0, 'address': '10.165.17.175:3692'}]
    activities =
    }


    大家可以看到,這2個實例都不是PRIMARY,說明剛剛搭建完的環境,系統是不會選舉出PRIMARY的。

    十一、選舉一個主庫

    選舉的方法也非常簡單,具體如下:

    mysqlfabric group promote my_group
    Password for admin:
    Procedure :
    { uuid = 529380b9-10ef-409f-a1a9-9430ab9845a3,
    finished = True,
    success = True,
    return = True,
    activities =
    }


    可見執行成功了,并沒有返回error。

    接下來我們再次驗證一下HA集群中各服務器情況。

    mysqlfabric group lookup_servers my_group
    Password for admin:
    Command :
    { success = True
    return = [{'status': 'SECONDARY', 'server_uuid': '6914a176-2370-11e4-af48-00163e004141', 'mode': 'READ_ONLY', 'weight': 1.0, 'address': '10.165.17.175:3691, {'status': 'PRIMARY', 'server_uuid': 'a8a69428-2366-11e4-af09-00163e004141', 'mode': 'READ_WRITE', 'weight': 1.0, 'address': '10.165.17.175:3692}]
    activities =
    }


    可見Fabric已經隨機選舉了一個Master角色。

    十二、激活故障自動切換

    即使Fabric選出了Master角色,但當這個Master宕機時,Fabric并不會自動將Secondary角色切換成Master角色,所以我們需要將HA配置成可以自動切換角色的樣子,具體如下:

    mysqlfabric group activate my_group
    Password for admin:
    Procedure :
    { uuid = 518b7dad-06a4-45a8-bfd5-241396706b88,
    finished = True,
    success = True,
    return = True,
    activities =
    }


    當然,我們也可以依據具體需求取消Fabric故障自動切換。

    十三、測試HA

    在這個實驗中,我們將3691實例停止,再看看Fabric的狀態:

    mysqlfabric group lookup_servers my_group
    Password for admin:
    Command :
    { success = True
    return = [{'status': 'PRIMARY', 'server_uuid': '6914a176-2370-11e4-af48-00163e004141', 'mode': 'READ_WRITE', 'weight': 1.0, 'address': '10.165.17.175:3691}, {'status': 'FAULTY', 'server_uuid': 'a8a69428-2366-11e4-af09-00163e004141', 'mode': 'READ_WRITE', 'weight': 1.0, 'address': '10.165.17.175:3692}]
    activities =
    }


    其中3692實例的狀態已經變成了“FAULTY”,可以看出Fabric自動檢測到了這個故障,并且選舉了slave重新當了primary角色。我不得不說就是這個功能,是它吸引我的原因之一。

    十四、后續學習

    關于后續的學習,大家要看看官網的用戶手冊,里面還有很多HA維護的方法,如增減節點等問題,同時目前Fabric也提供了phtyon和Java的API,可以供軟件開發人員直接使用,以后的軟件開發人員,不是再直接連接到MySQL實例,而是連接到Fabric,由Fabric來統一分發請求,這有些象MySQL Proxy,但它的應用前景要比MySQL Proxy更寬更廣。

    作者簡介:

    盤古,目前主要推動公益性IT項目的發展,51linux.net聯合創建人,該網站主要為那些學習linux或數據庫技術的同學提供免費linux服務器。


    轉自:http://www.csdn.net/article/2014-08-20/2821300

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    MySQL原生HA方案–Fabric感受之旅

    MySQL原生HA方案–Fabric感受之旅:MySQL原生HA方案 – Fabric體驗之旅 關鍵字:MySQL原生HA方案 – Fabric體驗之旅 tag:云計算MySQL FabricHA方案. 轉自:http://www.csdn.net/article/2014-08-20/2821300 摘要:眾所周知,Fabric能提供MySQL的HA和Sharding方案
    推薦度:
    標簽: 感受 mysql 原生
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 精品国产福利第一区二区三区| 国产精品久久久久一区二区三区| 国产精品1区2区3区在线播放| 久久狠狠一本精品综合网| 99久久国语露脸精品国产| 亚洲国产精品久久久天堂| 精品人妻少妇一区二区| 91国内揄拍国内精品对白不卡| 99久久国产热无码精品免费| 亚洲精品午夜无码电影网| 青青热久久国产久精品| 国产乱子伦精品无码专区| 久久这里只有精品首页| 国产精品网站在线观看免费传媒 | 91麻豆精品国产自产在线观看一区| 中文字幕精品久久| 欧美精品亚洲精品日韩精品| 精品国产福利尤物免费| 国产午夜精品理论片免费观看| 青青草国产精品久久久久| 国产成人精品日本亚洲专一区| 精品少妇人妻av无码久久| 亚洲精品无码专区在线在线播放| 少妇亚洲免费精品| 亚洲国产主播精品极品网红 | 久久久久亚洲精品天堂久久久久久| 99久久国产综合精品网成人影院| 精品国产福利久久久| 国产精品一久久香蕉产线看| 国产精品九九九久久九九| 久久99精品国产一区二区三区| 国产精品岛国久久久久| 国产69精品久久久久777| 91久久婷婷国产综合精品青草| 国产AV国片精品| 国产精品国色综合久久| 999精品在线| 精品视频一区二区三区在线观看| 久久九九青青国产精品| 国产A∨免费精品视频| 国产精品永久久久久久久久久|