程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 五種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