程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 五種MySQL數據庫可靠性方案的分析和比較

五種MySQL數據庫可靠性方案的分析和比較

編輯:關於MYSQL數據庫

      這篇文章主要從基本情況、成本、優缺點和應用場合等方面對5種MySQL的可靠性方案進行了詳細的分析和比較,另外,本文對MySQL數據庫的開發和管理有一定的借鑒作用。詳細內容請大家參考下文:

      1.MySQL Clustering(ndb-cluster stogare)

      簡介:

      MySQL公司以存儲引擎方式提供的高可靠性方案,是事務安全的,實時復制數據,可用於需要高可靠性及負載均衡的場合。該方案至少需要三個節點服務器才能達到較好的效果。

      成本:

      節點服務器對RAM的需求很大,與數據庫大小呈線性比例;

      最好使用千兆以太網絡;

      還需要使用Dolphin公司提供的昂貴的SCI卡。

      優點:

      可用於負載均衡場合;

      可用於高可靠性場合;

      高伸縮性;

      真正的數據庫冗余;

      容易維護。

      缺點:

      隨著數據庫的變大,對RAM的需求變得更大,因此成本很高;

      速度:

      幾乎 比典型的單獨服務器(無千兆以太網,無SCI卡,存儲引擎相關的限制少)慢10倍。

      應用場合:

      冗余,高可靠性,負載均衡

      2. MySQL / GFS-GNBD/ HA (Active/Passive)

      簡介:

      如果多個MySQL服務器使用共享硬盤作為數據存儲,此方案如何?

      GFS/GNBD可以提供所需的共享硬盤。

      GFS是事務安全的文件系統。同一時刻你可以讓一個MySQL使用共享數據。

      成本:

      最多n台高性能服務器的成本,其中一個激活的,其他作為備份服務器。

      優點:

      高可靠性

      某種程度的冗余

      按照高可靠性進行伸縮

      缺點:

      沒有負載均衡

      沒有保證的冗余

      無法對寫操作進行伸縮

      速度

      單獨服務器的2倍。對讀操作支持得較好。

      應用場合

      需要高可靠性的、讀操作密集型的應用

      3. MySQL / DRBD / HA (Active/Passive)

      簡介:

      如果多個MySQL服務器使用共享硬盤作為數據存儲,此方案如何?

      DRBD可以提供這樣的共享硬盤。DRBD可以被設置成事務安全的。

      同一時刻你可以讓一個MySQL使用共享數據。

      成本:

      最多n台高性能服務器的成本,其中一個激活的,而其他則作為備份服務器。

      優點:

      高可靠性;

      一定程度的冗余;

      以高可靠性名義來看是可伸縮的。

      缺點:

      沒有負載均衡

      沒有保證的冗余

      在寫負載方面沒有伸縮性

      速度:

      在讀寫方面相當於單獨服務器

      應用場合

      需要高可靠性、讀操作密集型的應用

      4. MySQL Write Master / Multiple MySQL Read Slaves (Active/Active)

      簡介:

      考慮不同的讀、寫DB數據庫連接的情況。可以使用一台主服務器用於寫操作,而采用n台從服務器用於讀操作。

      成本:

      最多1台高性能寫服務器,n台讀服務器的成本

      優點:

      讀操作的高可靠性;

      讀操作的負載均衡;

      在讀操作負載均衡方面是可伸縮的。

      缺點:

      無寫操作的高可靠性;

      無寫操作的負載均衡;

      在寫操作方面無伸縮性;

      速度:

      同單獨服務器;在讀操作方面支持得較好

      應用場合

      讀操作密集型的、需要高可靠性和負載均衡的應用。

      5. Standalone MySQL Servers(Functionally separated) (Active)

      多台功能分離的單獨服務器,沒有高可靠性、負載均衡能力,明顯缺點太多,不予考慮。

      總結:

      MySQL官方網站推薦的HA方案是結合DRBD (本文中的方案3) 和 Replication (本文中的方案4)。假如再加上Linux Heartbeat還可實現Auto-failover功能,在此種情況下,我們會發現,down機時間會大大減少。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved