SQL Server 2008高可用性系列:基礎(chǔ)知識(shí)
一:高可用性簡(jiǎn)介
今天越來(lái)越多的公司都希望一部分或者所有的關(guān)鍵數(shù)據(jù)是高可用性的。比如在線交易支付系統(tǒng),在線訂單銷售系統(tǒng),物流運(yùn)輸管理系統(tǒng)等等需要有"24x7"在線支持服務(wù),否則就有可能會(huì)有銷售額的減少或者利潤(rùn)的損失。
在理想情況下,關(guān)鍵數(shù)據(jù)應(yīng)該一直可用,這樣業(yè)務(wù)系統(tǒng)才會(huì)一直處于可用狀態(tài),并且不能威脅到可用性。但是在實(shí)際情況下,會(huì)有很多的異常情況導(dǎo)致數(shù)據(jù)不可用(如DB異常掛掉,數(shù)據(jù)操作誤刪,Server軟硬件故障等)。因此就要尋求一種可用性的解決方案,來(lái)解決由異常帶來(lái)的數(shù)據(jù)臨時(shí)不可用的問(wèn)題。
和災(zāi)難恢復(fù)(Disaster Recovery)不同。災(zāi)難恢復(fù)是在DB發(fā)生故障之后(宕機(jī)導(dǎo)致數(shù)據(jù)丟失,數(shù)據(jù)誤刪等),通過(guò)數(shù)據(jù)恢復(fù), 使丟失的數(shù)據(jù)重新可用;高可用性是在數(shù)據(jù)發(fā)生故障之前,為避免對(duì)數(shù)據(jù)的可用性造成影響而使數(shù)據(jù)處于可用狀態(tài)的一種解決方案。
二: DOWNTIME和Data Loss的原因
1. 計(jì)劃內(nèi)的停工期,不會(huì)導(dǎo)致數(shù)據(jù)丟失
(1) DB維護(hù)
數(shù)據(jù)備份
創(chuàng)建或者重建索引
數(shù)據(jù)收縮
停機(jī)維護(hù)(在非工作時(shí)間)
(2) 批處理操作
一次查詢大量的數(shù)據(jù)
Table被鎖或死鎖
(3) DB升級(jí)
硬件升級(jí)(CPU,RAM,HDD,NetWork…)
軟件升級(jí)(OS, Microsoft upgrade, SQL Server版本升級(jí))
2. 計(jì)劃外的停工期,會(huì)導(dǎo)致數(shù)據(jù)丟失
(1) 數(shù)據(jù)中心故障
會(huì)導(dǎo)致整個(gè)的系統(tǒng)無(wú)法使用
(2) Server故障
軟件故障(OS, SQL Server服務(wù)啟動(dòng)失效)
硬件故障(CPU, RAM,HDD,NetWork)
(3) IO子系統(tǒng)故障
硬盤故障
RAID控制器故障
IO阻塞
(4) 人為失誤
數(shù)據(jù)誤操作
三:高可用性的解決方案
目前我所熟悉的SQL Server 2008提供的高可用性解決方案大致有以下幾個(gè),對(duì)架構(gòu)和使用方式做一個(gè)總結(jié), 提出一點(diǎn)淺見:
1. Database Snapshots(數(shù)據(jù)庫(kù)快照)
2. Log Shipping(日志傳送)
3. Database Replication(數(shù)據(jù)庫(kù)復(fù)制)
4. Database Mirroring(數(shù)據(jù)庫(kù)鏡像)
5. Failover Clustering(群集故障轉(zhuǎn)移)
原文標(biāo)題:SQL Server 2008高可用性(High Availability)簡(jiǎn)介(1)—概述
鏈接:http://www.cnblogs.com/changbluesky/archive/2010/09/07/1820355.html
【編輯推薦】