IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁(yè)數(shù)據(jù)庫(kù)MYSQL → MySQL Cluster集群配置方案

MySQL Cluster集群配置方案

時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(1)

  在為某證券公司設(shè)計(jì)其OA架構(gòu)時(shí),初期客戶是30萬用戶在線;然而在項(xiàng)目實(shí)施中,客戶又提出50萬用戶同時(shí)在線的需求,而且都有寫的需求;這樣初始的設(shè)計(jì)master-master-slave,讀寫分離滿足不了客戶的要求,所以我們打算采用Mysql Cluster方案;MySQL Cluster 是MySQL適合于分布式計(jì)算環(huán)境的高實(shí)用、高冗余版本。它采用了NDB Cluster 存儲(chǔ)引擎,允許在1個(gè)Cluster中運(yùn)行多個(gè)MySQL服務(wù)器。在MyQL 5.0及以上的二進(jìn)制版本中、以及與最新的Linux版本兼容的RPM中提供了該存儲(chǔ)引擎。

  一、MySQL Cluster概述

  MySQL Cluster 是一種技術(shù),該技術(shù)允許在無共享的系統(tǒng)中部署"內(nèi)存中"數(shù)據(jù)庫(kù)的 Cluster 。通過無共享體系結(jié)構(gòu),系統(tǒng)能夠使用廉價(jià)的硬件,而且對(duì)軟硬件無特殊要求。此外,由于每個(gè)組件有自己的內(nèi)存和磁盤,不存在單點(diǎn)故障。

  MySQL Cluster 由一組計(jì)算機(jī)構(gòu)成,每臺(tái)計(jì)算機(jī)上均運(yùn)行著多種進(jìn)程,包括MySQL服務(wù)器,NDB Cluster 的數(shù)據(jù)節(jié)點(diǎn),管理服務(wù)器,以及(可能)專門的數(shù)據(jù)訪問程序。

  所有的這些節(jié)點(diǎn)構(gòu)成一個(gè)完成的MySQL集群體系。數(shù)據(jù)保存在"NDB存儲(chǔ)服務(wù)器"的存儲(chǔ)引擎中,表(結(jié)構(gòu))則保存在"MySQL服務(wù)器"中。應(yīng)用程序通過"MySQL服務(wù)器"訪問這些數(shù)據(jù)表,集群管理服務(wù)器通過管理工具(ndb_mgmd)來管理"NDB存儲(chǔ)服務(wù)器"。

  通過將MySQL Cluster 引入開放源碼世界,MySQL為所有需要它的人員提供了具有高可用性、高性能和可縮放性的 Cluster 數(shù)據(jù)管理。

  二、MySQL Cluster 基本概念

  "NDB" 是一種"內(nèi)存中"的存儲(chǔ)引擎,它具有可用性高和數(shù)據(jù)一致性好的特點(diǎn)。

  MySQL Cluster 能夠使用多種故障切換和負(fù)載平衡選項(xiàng)配置NDB存儲(chǔ)引擎,但在 Cluster 級(jí)別上的存儲(chǔ)引擎上做這個(gè)最簡(jiǎn)單。MySQL Cluster的NDB存儲(chǔ)引擎包含完整的數(shù)據(jù)集,僅取決于 Cluster本身內(nèi)的其他數(shù)據(jù)。

  目前,MySQL Cluster的 Cluster部分可獨(dú)立于MySQL服務(wù)器進(jìn)行配置。在MySQL Cluster中, Cluster的每個(gè)部分被視為1個(gè)節(jié)點(diǎn)。

  管理(MGM)節(jié)點(diǎn):這類節(jié)點(diǎn)的作用是管理MySQL Cluster內(nèi)的其他節(jié)點(diǎn),如提供配置數(shù)據(jù)、啟動(dòng)并停止節(jié)點(diǎn)、運(yùn)行備份等。由于這類節(jié)點(diǎn)負(fù)責(zé)管理其他節(jié)點(diǎn)的配置,應(yīng)在啟動(dòng)其他節(jié)點(diǎn)之前首先啟動(dòng)這類節(jié)點(diǎn)。MGM節(jié)點(diǎn)是用命令"ndb_mgmd"啟動(dòng)的。

  數(shù)據(jù)節(jié)點(diǎn):這類節(jié)點(diǎn)用于保存 Cluster的數(shù)據(jù)。數(shù)據(jù)節(jié)點(diǎn)的數(shù)目與副本的數(shù)目相關(guān),是片段的倍數(shù)。例如,對(duì)于兩個(gè)副本,每個(gè)副本有兩個(gè)片段,那么就有4個(gè)數(shù)據(jù)節(jié)點(diǎn)。不過沒有必要設(shè)置多個(gè)副本。數(shù)據(jù)節(jié)點(diǎn)是用命令"ndbd"啟動(dòng)的。

  SQL節(jié)點(diǎn):這是用來訪問 Cluster數(shù)據(jù)的節(jié)點(diǎn)。對(duì)于MySQL Cluster,客戶端節(jié)點(diǎn)是使用NDB Cluster存儲(chǔ)引擎的傳統(tǒng)MySQL服務(wù)器。通常,SQL節(jié)點(diǎn)是使用命令"mysqld –ndbcluster"啟動(dòng)的,或?qū)?ndbcluster"添加到"my.cnf"后使用"mysqld"啟動(dòng)。

  注釋:在很多情況下,術(shù)語(yǔ)"節(jié)點(diǎn)"用于指計(jì)算機(jī),但在討論MySQL Cluster時(shí),它表示的是進(jìn)程。在單臺(tái)計(jì)算機(jī)上可以有任意數(shù)目的節(jié)點(diǎn),為此,我們采用術(shù)語(yǔ)" Cluster主機(jī)"。

  管理服務(wù)器(MGM節(jié)點(diǎn))負(fù)責(zé)管理 Cluster配置文件和 Cluster日志。 Cluster中的每個(gè)節(jié)點(diǎn)從管理服務(wù)器檢索配置數(shù)據(jù),并請(qǐng)求確定管理服務(wù)器所在位置的方式。當(dāng)數(shù)據(jù)節(jié)點(diǎn)內(nèi)出現(xiàn)新的事件時(shí),節(jié)點(diǎn)將關(guān)于這類事件的信息傳輸?shù)焦芾矸?wù)器,然后,將這類信息寫入 Cluster日志。

  此外,可以有任意數(shù)目的 Cluster客戶端進(jìn)程或應(yīng)用程序。它們分為兩種類型:

  標(biāo)準(zhǔn)MySQL客戶端:對(duì)于MySQL Cluster,它們與標(biāo)準(zhǔn)的(非 Cluster類)MySQL沒有區(qū)別。換句話講,能夠從用PHP、Perl、C、C++、Java、Python、Ruby等編寫的現(xiàn)有MySQL應(yīng)用程序訪問MySQL Cluster。

  管理客戶端:這類客戶端與管理服務(wù)器相連,并提供了啟動(dòng)和停止節(jié)點(diǎn)、啟動(dòng)和停止消息跟蹤(僅調(diào)試版本)、顯示節(jié)點(diǎn)版本和狀態(tài)、啟動(dòng)和停止備份等的命令。

  三、開始準(zhǔn)備

  1、準(zhǔn)備服務(wù)器

  現(xiàn)在,我們計(jì)劃建立有5個(gè)節(jié)點(diǎn)的MySQL CLuster體系,因此需要用到5臺(tái)機(jī)器,分別做如下用途:

  • 用途主機(jī)名IP?
    管理節(jié)點(diǎn)ndb_mgmd192.168.5.101?
    數(shù)據(jù)節(jié)點(diǎn)1ndb1192.168.5.102?
    數(shù)據(jù)節(jié)點(diǎn)2ndb2

    相關(guān)閱讀

    文章評(píng)論
    發(fā)表評(píng)論

    熱門文章 Xbox Game Pass Xbox Game Pass 10款MySQL數(shù)據(jù)庫(kù)客戶端圖形界面管理工具推薦 10款MySQL數(shù)據(jù)庫(kù)客戶端圖形界面管理工具推薦 MySQL常用維護(hù)管理工具 MySQL常用維護(hù)管理工具 MySQL數(shù)據(jù)庫(kù)啟動(dòng)失敗1067進(jìn)程意外終止的解決辦法總結(jié) MySQL數(shù)據(jù)庫(kù)啟動(dòng)失敗1067進(jìn)程意外終止的解決辦法總結(jié)

    相關(guān)下載

      人氣排行 10款MySQL數(shù)據(jù)庫(kù)客戶端圖形界面管理工具推薦 MySQL數(shù)據(jù)庫(kù)啟動(dòng)失敗1067進(jìn)程意外終止的解決辦法總結(jié) Mysql 1045錯(cuò)誤解決辦法 MySQL服務(wù)器進(jìn)程CPU占用100%解決辦法 MySQL導(dǎo)出導(dǎo)入命令的用例 MySQL連接字符串的實(shí)際操作步驟匯總 MySQL無法啟動(dòng)、無法停止各種解決方法總結(jié) 三種常用的MySQL建表語(yǔ)句