SQL Server 2008高可用性 |
發(fā)布時(shí)間: 2012/9/15 14:50:45 |
有一個(gè)法則叫“九法則”,人和高可用性解決方案的終極目標(biāo)是五九法則,即99.999%,這樣每年只有比5分鐘多一點(diǎn)的死機(jī)時(shí)間。目前災(zāi)難恢復(fù)一詞已經(jīng)不再受人們歡迎。人們更喜歡使用的詞是業(yè)務(wù)連續(xù)性business continuity。其思想是希望防止系統(tǒng)(QQ:小默862693539)變得不可用,如果服務(wù)確實(shí)失敗,使其對(duì)環(huán)境的影響最小。這篇文章介紹的高可用性解決方案可以幫助在停機(jī)事件中維護(hù)業(yè)務(wù)連續(xù)性。 故障轉(zhuǎn)移集群 SQL Server集群基于Windows服務(wù)集群服務(wù),集群的工作方式是在兩個(gè)或多個(gè)服務(wù)器(稱為節(jié)點(diǎn))作為一個(gè)單獨(dú)的虛擬服務(wù)器為終端用戶服務(wù)。 如果要開始集群的話,需要兩臺(tái)服務(wù)器,還需要一個(gè)共享的存儲(chǔ)設(shè)備。串行聯(lián)接SCSI,光纖通道和iSCSI是許多集群存儲(chǔ)設(shè)備的常用接口。如果選擇在集群解決方案中使用iSCSI,那么需要確保對(duì)于Windows網(wǎng)絡(luò)適配器相分離的iSCSI聯(lián)接采用一個(gè)專用的網(wǎng)絡(luò)接口卡。如果使用Windows Server 2008,確保使用一個(gè)兼容的存儲(chǔ)設(shè)備。在這個(gè)設(shè)備上將至少創(chuàng)建兩個(gè)卷。一個(gè)卷將作見證磁盤,保存集群配置信息。而對(duì)于應(yīng)用程序,將需要一個(gè)或多個(gè)數(shù)據(jù)卷。此外,要使集群起作用,需要為它定義一個(gè)虛擬服務(wù)器。該虛擬服務(wù)器在客戶端和終端應(yīng)用程序看來是一個(gè)服務(wù)器。它有一個(gè)唯一名稱和IP地址,可以將SQL Server安裝在這個(gè)虛擬服務(wù)器上。 主動(dòng)/被動(dòng)集群:在主動(dòng)/被動(dòng)集群中,對(duì)于單個(gè)應(yīng)用程序,有一個(gè)節(jié)點(diǎn)被指派為主節(jié)點(diǎn),所有進(jìn)入該集群虛擬服務(wù)器的請(qǐng)求都被導(dǎo)向至主節(jié)點(diǎn)。輔助節(jié)點(diǎn)時(shí)故障轉(zhuǎn)移節(jié)點(diǎn),只有在主節(jié)點(diǎn)不可用且其中沒有檢測(cè)信號(hào)時(shí),他們被變成主動(dòng)的。當(dāng)這種情況發(fā)生時(shí),一個(gè)輔助節(jié)點(diǎn)會(huì)開始接收集群的工作,使得應(yīng)用程序繼續(xù)運(yùn)行而幾乎沒有明顯的中段。 主動(dòng)/主動(dòng)集群:主動(dòng)/主動(dòng)集群是這樣一幅場(chǎng)景,其中運(yùn)行著許多個(gè)集群感知的應(yīng)用程序,而且每個(gè)應(yīng)用程序都有一個(gè)不同的節(jié)點(diǎn)被配置為該應(yīng)用程序的主節(jié)點(diǎn)。這主要是受數(shù)據(jù)庫(kù)和其他應(yīng)用程序服務(wù)的工作方式的限制。例如,如果只關(guān)注SQL Server,那么每次只有一個(gè)服務(wù)器可以寫主動(dòng)事務(wù)日志。由于其他節(jié)點(diǎn)無法寫入同一事物日志,他們還能做什么呢?可以配置另一個(gè)虛擬服務(wù)器,把一個(gè)現(xiàn)有的備用節(jié)點(diǎn)配置為該虛擬服務(wù)器的主節(jié)點(diǎn),然后在該服務(wù)器上安裝另一個(gè)SQL Server實(shí)例。假如,假定您有兩個(gè)服務(wù)器,節(jié)點(diǎn)A和節(jié)點(diǎn)B,節(jié)點(diǎn)A是集群服務(wù)器1的主節(jié)點(diǎn),節(jié)點(diǎn)B是它的輔助節(jié)點(diǎn)。您決定使用這兩個(gè)服務(wù)器創(chuàng)建一個(gè)叫做集群服務(wù)器2的輔助虛擬服務(wù)器。只有在這個(gè)時(shí)候節(jié)點(diǎn)B才是主節(jié)點(diǎn),而節(jié)點(diǎn)A是輔助節(jié)點(diǎn)。要想使主動(dòng)/主動(dòng)集群發(fā)揮作用,那么如果兩個(gè)虛擬服務(wù)器都出現(xiàn)故障,備用服務(wù)器必須能夠處理他們兩個(gè)加起來的工作量。因此,如果服務(wù)器A死機(jī)了,服務(wù)器B就必須能夠響應(yīng)針對(duì)兩個(gè)虛擬服務(wù)器的客戶端請(qǐng)求。 日志傳送 日志傳送時(shí)用于維護(hù)業(yè)務(wù)連續(xù)性的另一種方法。和故障轉(zhuǎn)移集群不一樣,日志傳送時(shí)基于每臺(tái)數(shù)據(jù)庫(kù)進(jìn)行管理的。它允許指定一個(gè)或多個(gè)服務(wù)器來存儲(chǔ)某數(shù)據(jù)庫(kù)的輔助副本。其實(shí)現(xiàn)方法是 先常規(guī)備份事務(wù)日志,然后把這些備份還原到一個(gè)輔助服務(wù)器上。 準(zhǔn)備日志傳送:首選確定主服務(wù)器和備用服務(wù)器之間存在可靠的網(wǎng)絡(luò)連接。其次,確保數(shù)據(jù)庫(kù)使用了完整恢復(fù)模式;還需要確保備用服務(wù)器上不存在目標(biāo)數(shù)據(jù)庫(kù)。 使用SQL Server Management Studio配置日志傳送:右擊該數(shù)據(jù)庫(kù),選擇任務(wù)-傳送事務(wù)日志命令。在事務(wù)日志傳送頁(yè)面上,可以配置備份數(shù)據(jù)庫(kù),指定輔助服務(wù)器和監(jiān)視服務(wù)器所需的選項(xiàng)。首先,必須把這個(gè)數(shù)據(jù)庫(kù)啟用為日志傳送的主服務(wù)器。單擊“備份設(shè)置”將會(huì)出現(xiàn)一個(gè)新的窗口,允許指定備份操作的位置和頻率。如果有多個(gè)輔助服務(wù)器,而且希望在其中一個(gè)輔助服務(wù)器升級(jí)為主服務(wù)器之后繼續(xù)使用備用輔助服務(wù)器,那么可以考慮把備份文件夾放在所有服務(wù)器都可以訪問的共享位置上,但要確保當(dāng)主服務(wù)器上發(fā)生一般的服務(wù)故障時(shí),該位置不會(huì)受到影響。一旦配置了備份作業(yè)設(shè)置,就可以配置一個(gè)或多個(gè)輔助服務(wù)器?梢詫⑤o助服務(wù)器配置為熱備用服務(wù)器,使之處于NO RECOVERY狀態(tài),直至出現(xiàn)故障轉(zhuǎn)移,或者也可以把它們配置為數(shù)據(jù)庫(kù)的一個(gè)只讀副本。 要配置一個(gè)新的輔助服務(wù)器,可以在事務(wù)日志傳送頁(yè)面上單擊添加按鈕。如果用于故障轉(zhuǎn)移,那么輔助服務(wù)器的名稱應(yīng)當(dāng)和主服務(wù)器一致,這樣可以避免重新配置客戶端應(yīng)用程序。然后還可以配置數(shù)據(jù)庫(kù)初次還原的選項(xiàng)。在復(fù)制文件選項(xiàng)卡中,可以配置有關(guān)文件復(fù)制任務(wù)的選項(xiàng)?梢詣(chuàng)建一個(gè)新的作業(yè),把備份操作創(chuàng)建的文件復(fù)制到輔助服務(wù)器上的目標(biāo)文件夾中。在還原事務(wù)日志選項(xiàng)卡中可以配置還原操作,包括恢復(fù)模式,頻率和使用備用數(shù)據(jù)庫(kù)的任務(wù)。還可以配置延遲還原操作以保證備份及復(fù)制操作有機(jī)會(huì)完成,并制定在多長(zhǎng)時(shí)間內(nèi)如果沒有執(zhí)行還原就發(fā)出警報(bào),還可以為還原任務(wù)配置適當(dāng)?shù)挠?jì)劃。 另外,也可以配置服務(wù)器來監(jiān)視日志傳送操作,但并不是必須這么做。該服務(wù)器應(yīng)該是一個(gè)不直接參與日志傳送過程的SQL Server。要添加監(jiān)視服務(wù)器,可以在事務(wù)日志傳送頁(yè)面上選擇“使用監(jiān)視服務(wù)器實(shí)例”,然后單擊設(shè)置按鈕添加和配置新的服務(wù)器。在配置了日志傳送監(jiān)視器之后,也可以使用它來查看該服務(wù)器監(jiān)視的所有日志傳送數(shù)據(jù)庫(kù)的報(bào)表。為此,可以在對(duì)象資源管理器中右擊服務(wù)器名稱,選擇報(bào)表-標(biāo)準(zhǔn)報(bào)表-事務(wù)日志傳送狀態(tài)命令。 一旦配置了日志傳送選項(xiàng),就可以把它們應(yīng)用到數(shù)據(jù)庫(kù),如果所有的配置都正確,備份就會(huì)立刻開始。 使用Transact-SQL配置日志傳送:直接上實(shí)例代碼
配置故障轉(zhuǎn)移:要配置主服務(wù)器和輔助服務(wù)器之間的故障轉(zhuǎn)移,可以使用下列步驟:如果備份共享中有任何為復(fù)制的備份文件,需要把它們復(fù)制到每個(gè)輔助服務(wù)器上的復(fù)制目標(biāo);把所有剩下的事務(wù)日志按順序應(yīng)用到每個(gè)輔助數(shù)據(jù)庫(kù)上;如有可能,在主數(shù)據(jù)庫(kù)上執(zhí)行活動(dòng)事務(wù)日志的備份,復(fù)制該備份,然后將其應(yīng)用到每個(gè)備用數(shù)據(jù)庫(kù)中;如果主服務(wù)器仍然可以操作,那么故障轉(zhuǎn)移完成時(shí)可以將主數(shù)據(jù)庫(kù)配置為新的輔助數(shù)據(jù)庫(kù),使用NO RECOVERY選項(xiàng)在主數(shù)據(jù)庫(kù)上備份事務(wù)日志有助于完成這項(xiàng)工作;把數(shù)據(jù)庫(kù)設(shè)置為恢復(fù)模式,選擇一個(gè)輔助服務(wù)器來主流新的主數(shù)據(jù)庫(kù)。 如果有額外的輔助服務(wù)器,則可以將新恢復(fù)的數(shù)據(jù)庫(kù)配置為額外輔助數(shù)據(jù)庫(kù)的主數(shù)據(jù)庫(kù),并使原來的主數(shù)據(jù)庫(kù)成為一個(gè)新的輔助數(shù)據(jù)庫(kù),執(zhí)行下列步驟來進(jìn)行角色轉(zhuǎn)換:禁用原主服務(wù)器上的備份作業(yè);禁用原輔助服務(wù)器上的復(fù)制和還原作業(yè);對(duì)新的主數(shù)據(jù)庫(kù)的備份使用為原主數(shù)據(jù)庫(kù)創(chuàng)建的共享;添加原數(shù)據(jù)庫(kù)作為一個(gè)輔助數(shù)據(jù)庫(kù);在原數(shù)據(jù)庫(kù)的輔助數(shù)據(jù)庫(kù)選項(xiàng)中,指定該數(shù)據(jù)庫(kù)已經(jīng)初始化,這樣就沒有必要進(jìn)行完整還原。 由于日志傳送是基于每個(gè)數(shù)據(jù)庫(kù)配置的,因此可能需要執(zhí)行一些額外的任務(wù)以確保用戶能夠一致地訪問該數(shù)據(jù)庫(kù),即便發(fā)生了故障轉(zhuǎn)移。首先,客戶端使用的應(yīng)用程序必須知道這一更改。這可能要求手動(dòng)配置應(yīng)用程序使用新的主服務(wù)器或?qū)⑴f的服務(wù)器名稱重新指派為新服務(wù)器的別名。另外,要確保應(yīng)用程序?qū)?shù)據(jù)庫(kù)的一致訪問,將需要確保已經(jīng)遷移了該數(shù)據(jù)庫(kù)所有關(guān)聯(lián)的元數(shù)據(jù),包括SQL Server登錄名、作業(yè)和報(bào)警等。由于日志傳送有一些限制,創(chuàng)建只讀備用服務(wù)器很好,但是它對(duì)于故障轉(zhuǎn)移來說只是一個(gè)一般的解決方案。 數(shù)據(jù)庫(kù)鏡像 數(shù)據(jù)庫(kù)鏡像與日志傳送非常相似,即事務(wù)日志記錄是從源數(shù)據(jù)庫(kù)發(fā)送到目標(biāo)數(shù)據(jù)庫(kù)。不過,和基于文件復(fù)制的事務(wù)日志不同的是,單獨(dú)的日志記錄是基于事務(wù)發(fā)送的。盡管數(shù)據(jù)庫(kù)鏡像也是一個(gè)數(shù)據(jù)庫(kù)級(jí)別的冗余解決方案,但它依賴于服務(wù)間不斷通信來維護(hù)事務(wù)完整性。數(shù)據(jù)庫(kù)鏡像還提供了一個(gè)在配置了另外一個(gè)見證服務(wù)器時(shí)自動(dòng)并且?guī)缀跛矔r(shí)故障轉(zhuǎn)移的額外好處。數(shù)據(jù)庫(kù)鏡像的配置是通過在駐留主體數(shù)據(jù)庫(kù)的服務(wù)器和主流鏡像數(shù)據(jù)庫(kù)的服務(wù)器之間建立合作關(guān)系完成的。兩者之間的通信通過使用SQL Server端點(diǎn)建立和維護(hù),而不是使用文件系統(tǒng)(QQ:小默862693539)作為維護(hù)兩個(gè)服務(wù)器之間的一致性方法。日志傳送和數(shù)據(jù)庫(kù)鏡像的另外一個(gè)主要區(qū)別是,數(shù)據(jù)庫(kù)鏡像限制每個(gè)數(shù)據(jù)庫(kù)智能有一個(gè)主題服務(wù)器和一個(gè)鏡像服務(wù)器。 數(shù)據(jù)庫(kù)鏡像配置中的3個(gè)服務(wù)器角色如下:主體服務(wù)器、鏡像服務(wù)器、見證服務(wù)器(可選)。在使用數(shù)據(jù)庫(kù)鏡像時(shí),客戶端請(qǐng)求無法直接訪問鏡像數(shù)據(jù)庫(kù),因?yàn)樗恢碧幱诨謴?fù)事務(wù)日志記錄的狀態(tài)下。但是,可以通過創(chuàng)建鏡像數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)快照配置間接訪問。還要注意,數(shù)據(jù)庫(kù)鏡像不能與啟用了FILESTREAM存儲(chǔ)的數(shù)據(jù)庫(kù)一起使用。 客戶端重定向:數(shù)據(jù)庫(kù)鏡像的優(yōu)勢(shì)之一是如果主體數(shù)據(jù)庫(kù)出現(xiàn)故障,客戶端可以被自動(dòng)重定向到鏡像服務(wù)器。然而,自動(dòng)重定向不是基于服務(wù)器的功能。通過添加Failover Partner屬性,可以將客戶端的聯(lián)接字符串配置為與鏡像的數(shù)據(jù)庫(kù)一起工作,如果聯(lián)接Server屬性標(biāo)識(shí)的服務(wù)器失敗,那么它會(huì)嘗試連接由Failover Partner屬性標(biāo)識(shí)的數(shù)據(jù)庫(kù),反之亦然,如果聯(lián)接故障轉(zhuǎn)移伙伴不可用,就會(huì)嘗試連接原服務(wù)器 Server=AughtEight;Failover Partner=Dagobah;Database=AdventureWorks2008 數(shù)據(jù)庫(kù)鏡像模式:數(shù)據(jù)庫(kù)可以被配置為使用高性能模式、不支持自動(dòng)故障轉(zhuǎn)移的高安全性模式以及支持故障轉(zhuǎn)移的高安全性模式。高性能模式使用異步處理,當(dāng)主體服務(wù)器把事務(wù)日志記錄發(fā)送到鏡像服務(wù)器之后,會(huì)立刻向客戶端應(yīng)用程序發(fā)送一個(gè)事務(wù)成功的確認(rèn),但是不會(huì)等待鏡像服務(wù)器確認(rèn)接收日志記錄。在高性能模式下,不存在自動(dòng)故障轉(zhuǎn)移也不需要見證服務(wù)器,因?yàn)橹黝}服務(wù)器出現(xiàn)故障時(shí)仍然會(huì)要求強(qiáng)制執(zhí)行鏡像服務(wù)器上的數(shù)據(jù)庫(kù)服務(wù)。一旦原來的主主體服務(wù)器恢復(fù)服務(wù),它會(huì)配置自身為鏡像服務(wù)器,但是鏡像會(huì)話仍然會(huì)處于SUSPENDED狀態(tài),除非管理員明確要求恢復(fù)。不支持自動(dòng)故障轉(zhuǎn)移的高安全性模式中,在鏡像服務(wù)器確認(rèn)收到了相應(yīng)的事務(wù)日志記錄之前,主體服務(wù)器不會(huì)給客戶端發(fā)送事務(wù)成功的確認(rèn)消息。該模式中沒有自動(dòng)故障轉(zhuǎn)移,也沒有見證服務(wù)器,主體數(shù)據(jù)庫(kù)出現(xiàn)故障后要求手動(dòng)強(qiáng)制見證服務(wù)器上的服務(wù)器提升其主體。在鏡像服務(wù)器出現(xiàn)故障的情況下,客戶端仍然可以使用主體服務(wù)器,但是鏡像會(huì)話會(huì)處于斷開連接的狀態(tài)。支持自動(dòng)故障轉(zhuǎn)移的高安全性模式中,見證服務(wù)器用于提供自動(dòng)故障轉(zhuǎn)移。見證服務(wù)器不直接參與鏡像過程,而是作為兩個(gè)服務(wù)器之間的監(jiān)督員,只要三個(gè)參與此模式的服務(wù)器中有兩個(gè)能夠保證連接性,那么數(shù)據(jù)庫(kù)就會(huì)對(duì)客戶端請(qǐng)求可用。當(dāng)兩個(gè)服務(wù)器就鏡像會(huì)話的狀態(tài)取得一致時(shí),這就被叫做仲裁,如果鏡像或主體服務(wù)器丟失了仲裁,鏡像配置也會(huì)相應(yīng)的改變。 使用SQL Server Management Studio配置數(shù)據(jù)庫(kù)鏡像:打開數(shù)據(jù)庫(kù)屬性-鏡像頁(yè)面,或者從任務(wù)-鏡像菜單打開這個(gè)頁(yè)面,單擊配置安全性按鈕啟動(dòng)向?qū),要求為主體、鏡像和見證服務(wù)器端點(diǎn)提供聯(lián)接選項(xiàng)。單擊下一步進(jìn)入下一頁(yè)面,向?qū)?huì)詢問是否要配置一個(gè)見證服務(wù)器;向?qū)У南乱豁?yè)面要求標(biāo)識(shí)在這個(gè)向?qū)Ю镆渲玫姆⻊?wù)器,您需要檢查所有參與的服務(wù)器,包括見證服務(wù)器(如果使用了的話)。進(jìn)入下一頁(yè)面,配置主體服務(wù)器的選項(xiàng);接下來需要為鏡像服務(wù)器配置同樣的信息,注意,擋在每個(gè)服務(wù)器上創(chuàng)建端點(diǎn)時(shí),必須有在端點(diǎn)上創(chuàng)建和配置安全性的適當(dāng)權(quán)限;如果配置了見證服務(wù)器,下一頁(yè)面要求為見證服務(wù)器提供服務(wù)器名稱和端點(diǎn)配置,其中需要注意一點(diǎn),即如果同一物理服務(wù)器上有多個(gè)角色,那么端口號(hào)必須butong.youyu數(shù)據(jù)庫(kù)鏡像起作用的條件中并不要求所有的及其都采用相同的配置,甚至不要求他們是同一個(gè)域中的成員,所以向?qū)г试S為每個(gè)服務(wù)器指定賬戶信息。輸入這些信息后,就可以通過向?qū)У恼?yè)面查看配置。如果對(duì)設(shè)置感到滿意,可以單擊完成按鈕來創(chuàng)建端點(diǎn),如有必要,應(yīng)用合適的權(quán)限。在完成向?qū)Ш,SQL Server會(huì)提示立刻開始鏡像還是延遲鏡像。如果確定配置是正確的,并且鏡像服務(wù)器和主體服務(wù)器時(shí)一致的,那么就可以單擊按鈕開始鏡像。 使用T-SQL配置鏡像數(shù)據(jù)庫(kù):為了進(jìn)行數(shù)據(jù)庫(kù)鏡像,執(zhí)行下列命令創(chuàng)建一個(gè)不使用加密的端點(diǎn)
在主體服務(wù)器和鏡像服務(wù)器上執(zhí)行此語句會(huì)創(chuàng)建可用于鏡像的同樣的端點(diǎn)。如果只是測(cè)試鏡像,并且沒有使用一個(gè)單獨(dú)的物理服務(wù)器,那么只要這些端點(diǎn)使用不同的端口號(hào),就可以安裝另一個(gè)實(shí)例來鏡像數(shù)據(jù)庫(kù)。在使用一個(gè)見證服務(wù)器時(shí),在見證實(shí)例上執(zhí)行下列命令來創(chuàng)建合適的端點(diǎn):
創(chuàng)建數(shù)據(jù)庫(kù)鏡像的額外選項(xiàng)允許指定身份驗(yàn)證和加密選項(xiàng),要?jiǎng)?chuàng)建一個(gè)使用Windows身份驗(yàn)證和AES加密的新端點(diǎn),可以使用下列代碼
在創(chuàng)建了端點(diǎn)后,下一步就是建立鏡像。只需要把每個(gè)服務(wù)器上的數(shù)據(jù)庫(kù)指向目標(biāo)伙伴即可。這將通過使用一個(gè)ALTER DATABASE語句來完成:
當(dāng)主體和鏡像服務(wù)器都被配置為互相認(rèn)識(shí)時(shí),鏡像進(jìn)程就會(huì)開始,默認(rèn)情況下數(shù)據(jù)庫(kù)鏡像被配置為使用同步模式,但是可以在鏡像開始之后通過在主體服務(wù)器上執(zhí)行下列語句更改這一模式
監(jiān)視數(shù)據(jù)庫(kù)鏡像:從數(shù)據(jù)庫(kù)的任務(wù)菜單中選擇啟動(dòng)數(shù)據(jù)庫(kù)鏡像監(jiān)視器命令,打開一個(gè)新窗口。默認(rèn)情況下,您將會(huì)進(jìn)入從中啟動(dòng)工具的數(shù)據(jù)庫(kù)的狀態(tài)頁(yè)面;不過,也可以通過單擊導(dǎo)航樹中的數(shù)據(jù)庫(kù)鏡像監(jiān)視器鏈接額外注冊(cè)的鏡像集。在注冊(cè)頁(yè)面上,單擊利娜姐按鈕聯(lián)接主體或鏡像服務(wù)器,使用合適的身份驗(yàn)證和聯(lián)接選項(xiàng)。然后將會(huì)看到該實(shí)例上被鏡像的數(shù)據(jù)庫(kù)的列表,選擇合適的數(shù)據(jù)庫(kù)進(jìn)行注冊(cè),然后單擊確定按鈕;如果需要在主體和鏡像服務(wù)器之間使用不同的身份驗(yàn)證平局,可以選中“當(dāng)單擊確定后,顯示管理服務(wù)器連接對(duì)話框”復(fù)選框來指定每個(gè)服務(wù)器鏈接的選項(xiàng)。單擊警告選項(xiàng)卡可以查看或配置當(dāng)前基于鏡像條件生成警報(bào)的設(shè)置 管理數(shù)據(jù)庫(kù)鏡像:暫停鏡像會(huì)話,如果數(shù)據(jù)庫(kù)相應(yīng)中的延遲比較嚴(yán)重,原因可能是由必須維持主體和鏡服務(wù)器之間不斷通信的額外工作造成的,這時(shí)候可能需要考慮暫停那些通信。使用SSMS,瀏覽數(shù)據(jù)庫(kù)屬性的鏡像頁(yè)面,單擊暫停按鈕即可;蛘呤褂肨SQL的SET PARTNER SUSPEND執(zhí)行ALTER DATABASE語句
恢復(fù)鏡像會(huì)話,可在SSMS中單擊恢復(fù)按鈕,或者使用SET PARTNER RESUME選項(xiàng)執(zhí)行ALTER DATABASE語句來恢復(fù)
手動(dòng)故障轉(zhuǎn)移:不管鏡像的操作如何,都可以隨時(shí)通過SQL Server Management Studio或TSQL手動(dòng)啟動(dòng)故障轉(zhuǎn)移。在啟動(dòng)故障轉(zhuǎn)移是,任何連接到原主體服務(wù)器的客戶端都會(huì)被立刻斷開,而鏡像服務(wù)器會(huì)變成在線。如果原來的主體服務(wù)器仍在線,那么它就會(huì)變成鏡像服務(wù)器,并一直處于NO RECOVERY狀態(tài),直到再次執(zhí)行故障轉(zhuǎn)移。要想通過SQL Server Management Studio啟動(dòng)故障轉(zhuǎn)移,在主體數(shù)據(jù)庫(kù)的鏡像屬性頁(yè)面上單擊故障轉(zhuǎn)移按鈕即可,SQL 會(huì)處理剩下的工作。如果需要將之前的主體數(shù)據(jù)庫(kù)還原至主體狀態(tài),則必須連接到新的主體數(shù)據(jù)庫(kù),然后單擊數(shù)據(jù)庫(kù)屬性上的故障轉(zhuǎn)移按鈕。由于數(shù)據(jù)庫(kù)鏡像進(jìn)復(fù)制特定數(shù)據(jù)庫(kù)的內(nèi)容,因此在故障轉(zhuǎn)移之前或剛剛發(fā)生故障轉(zhuǎn)移時(shí),特定的服務(wù)器范圍的資源必須在服務(wù)器上可用,因此,在使用數(shù)據(jù)庫(kù)鏡像時(shí),最好創(chuàng)建一個(gè)Integration Services包,它將定期復(fù)制額外的對(duì)象。要使用TSQL手動(dòng)故障轉(zhuǎn)移,必須連接到主體服務(wù)器,然后執(zhí)行下列代碼
強(qiáng)制鏡像服務(wù)器上的服務(wù):當(dāng)處于高性能或不支持自動(dòng)故障轉(zhuǎn)移的高安全性模式下,一旦主體服務(wù)器發(fā)生故障,鏡像服務(wù)器不是自動(dòng)可用的,要強(qiáng)制鏡像服務(wù)器提升自己并響應(yīng)客戶端請(qǐng)求,可以在鏡像服務(wù)器上發(fā)出下列命令:
取消數(shù)據(jù)庫(kù)鏡像:一旦不再需要某個(gè)數(shù)據(jù)庫(kù)鏡像的話,就可以中段鏡像。中斷鏡像允許兩個(gè)參與的服務(wù)器維護(hù)該數(shù)據(jù)庫(kù)的一份副本。主體服務(wù)器會(huì)保持在線,而鏡像服務(wù)器將處于恢復(fù)模式。中段鏡像不會(huì)刪除、移除或更改端點(diǎn),這一點(diǎn)非常好,因?yàn)樗麄內(nèi)匀豢梢员皇褂脭?shù)據(jù)庫(kù)鏡像的其他數(shù)據(jù)庫(kù)使用。。通過SSMS中斷鏡像可以單擊主體數(shù)據(jù)庫(kù)的鏡像屬性頁(yè)面上的取消鏡像按鈕,如果使用TSQL的話,可以使用ALTER DATABASE語句中的SET PARTNER OFF選項(xiàng):
本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |