【文章內(nèi)容簡(jiǎn)介】
ec00 . 0 50 . 10 . 1 50 . 2Response Time (sec)T r a n s a c t i o n s / s e c R e s p o n s e T i m e ( s e c )網(wǎng)絡(luò)帶寬的影響 未傳送字節(jié)數(shù) : Workload1下的異步鏡像 Lo g S e nd Q ue ue f or W ork l oa d1 w i t h A s y nc hron ou s M i r r ori ng on N e t w ork w i t h B a nd w i dt h = 1 M bp s0500000100000015000002020000250000023:24:5623:28:4623:32:3723:36:2623:40:1723:44:0623:47:5723:51:4623:55:3623:59:260:03:160:07:060:10:560:14:460:18:360:22:26Ti m e ( hh : m m : s s )KB議程 數(shù)據(jù)庫(kù)鏡像簡(jiǎn)介 數(shù)據(jù)庫(kù)鏡像工作原理 事務(wù)安全 性能注意事項(xiàng) 網(wǎng)絡(luò)結(jié)構(gòu)注意事項(xiàng) 故障轉(zhuǎn)移注意事項(xiàng) 部署注意事項(xiàng) 監(jiān)控 提問(wèn) 運(yùn)行模式 運(yùn)行模式 見證服務(wù)器 安全級(jí)別 自動(dòng)故障轉(zhuǎn)移 故障轉(zhuǎn)移中的數(shù)據(jù)損失風(fēng)險(xiǎn) 有見證服務(wù)器的同步 有 FULL 有 無(wú) 無(wú)見證服務(wù)器的同步 無(wú) FULL 無(wú) 無(wú) 異步 無(wú) OFF 無(wú) 有 故障轉(zhuǎn)移注意事項(xiàng) 故障轉(zhuǎn)移作用于數(shù)據(jù)庫(kù)級(jí)別 不存在組 /實(shí)例級(jí)別的故障轉(zhuǎn)移 數(shù)據(jù)庫(kù)之外的數(shù)據(jù)將不會(huì)被轉(zhuǎn)移 Master: logins, 用戶編輯的存儲(chǔ)過(guò)程等 . MSDB: Jobs, histories等 . 自動(dòng)故障恢復(fù)中的事件 時(shí)間 檢測(cè)故障所用時(shí)間 固定時(shí)間 數(shù)據(jù)庫(kù)恢復(fù)可用 與見證服務(wù)器協(xié)調(diào)所用時(shí)間 檢測(cè)到故障 前滾完成 前滾狀態(tài) 回滾狀態(tài) 從主服務(wù)器故障的檢測(cè)到鏡像服務(wù)器承擔(dān)主服務(wù)器角色所隔時(shí)間稱為數(shù)據(jù)庫(kù)故障轉(zhuǎn)移時(shí)間 故障發(fā)生 決定故障轉(zhuǎn)移 自動(dòng)故障轉(zhuǎn)移中的故障檢測(cè) 兩種不同類型的故障 SQL Server 每秒鐘互相 Ping 缺省情況下 10 次 “ ping” 都失敗時(shí)將宣告故障發(fā)生 SQL Server以外的部分 操作系統(tǒng) 網(wǎng)絡(luò)錯(cuò)誤 IO錯(cuò)誤 處理器錯(cuò)誤 故障示例 快速 SQL Server 實(shí)例宕機(jī) Endpoint 迅速關(guān)閉端口 連接伙伴設(shè)備的網(wǎng)絡(luò)重試迅速宣告失敗 操作系統(tǒng)宣布端口被關(guān)閉 快速故障 ! 故障轉(zhuǎn)移在數(shù)秒鐘內(nèi)啟動(dòng) 故障示例 較慢速 服務(wù)器災(zāi)難性故障 電源斷開 連接伙伴設(shè)備的網(wǎng)絡(luò)重試將等待超時(shí) SQL Server “ping” 很可能首先宣告失敗 故障轉(zhuǎn)移在 10秒鐘內(nèi)啟動(dòng) 故障示例 更慢速 主服務(wù)器上的日志驅(qū)動(dòng)器被拔出 將驅(qū)動(dòng)器上的 IO隊(duì)列掛起 SQL Server “pings” 仍然可以正常工作 20秒后 , SQL Server 發(fā)出 IO警告 40秒后 , SQL Serve 宣告 IO故障 故障轉(zhuǎn)移在驅(qū)動(dòng)器被拔出 40秒后啟動(dòng) 故障示例 無(wú)故障轉(zhuǎn)移或快速故障轉(zhuǎn)移 數(shù)據(jù)庫(kù)頁(yè)校驗(yàn)和失敗 客戶端連接失敗 自動(dòng)事務(wù)回滾 無(wú)故障轉(zhuǎn)移 數(shù)據(jù)庫(kù)頁(yè)校驗(yàn)和失敗 事務(wù)原先正在回滾中 此時(shí)數(shù)據(jù)庫(kù)無(wú)法一致 數(shù)據(jù)庫(kù)進(jìn)入 SUSPECT狀態(tài) 快速故障轉(zhuǎn)移 !!! 關(guān)于長(zhǎng)時(shí)間連接斷開的討論 長(zhǎng)時(shí)間斷開 鏡像不可用 → DISCONNECTED 鏡像會(huì)話掛起 → SUSPENDED 日志記錄在主服務(wù)器上累積 即使經(jīng)過(guò)備份,事務(wù)日志仍然不能截?cái)? 最后可能占滿事務(wù)日志空間,導(dǎo)致數(shù)據(jù)庫(kù)停止運(yùn)行 檢查 上的 LOG_REUSE_WAIT_DESC列 恢復(fù)或中斷鏡像會(huì)話 議程 數(shù)據(jù)庫(kù)鏡像簡(jiǎn)介 數(shù)據(jù)庫(kù)鏡像工作原理 事務(wù)安全 性能注意事項(xiàng) 網(wǎng)絡(luò)結(jié)構(gòu)注意事項(xiàng) 故障轉(zhuǎn)移注意事項(xiàng) 部署注意事項(xiàng) 監(jiān)控 提問(wèn) 部署注意事項(xiàng) 1 運(yùn)行模式 見證服務(wù)器 安全級(jí)別 自動(dòng)故障轉(zhuǎn)移 故障轉(zhuǎn)移中的數(shù)據(jù)損失風(fēng)險(xiǎn) 有見證服務(wù)器的同步 Yes FULL Yes No 沒(méi)有見證服務(wù)器的同步 No FULL No No 異步 No OFF No Yes 部署注意事項(xiàng) 2 用戶案例 在關(guān)鍵任務(wù)程序中部署有見證服務(wù)器的同步模式 針對(duì)災(zāi)難恢復(fù) , 用戶成功進(jìn)行了異步條件下的部署 一些客戶希望采取同步模式,但又選擇手動(dòng)故障轉(zhuǎn)移 多數(shù)據(jù)庫(kù) 公司 IT策略要求人工干預(yù) 從簡(jiǎn)單的異步鏡像開始 根據(jù)需要增加復(fù)雜性 – 循序漸進(jìn) 啟動(dòng)同步 增加一個(gè)見證服務(wù)器 部署實(shí)例 ServiceU上的災(zāi)難恢復(fù)解決方案 部署注意事項(xiàng) 3 管理計(jì)劃停機(jī)時(shí)間 滾動(dòng)升級(jí) 首先升級(jí)鏡像服務(wù)器 故障轉(zhuǎn)移 升級(jí)新的鏡像服務(wù)器 再次回到故障轉(zhuǎn)移 如果使用異步鏡像 等待低活性窗口期 轉(zhuǎn)為開始同步,等待直到同步完成 如上,使用滾動(dòng)升級(jí) 轉(zhuǎn)回異步 考慮盡可能支持未來(lái)應(yīng)用 可以同時(shí)部署數(shù)據(jù)庫(kù)鏡像和日志傳送 對(duì)于多目的地的情況 如果替換日志傳送 考慮對(duì)恢復(fù)模式的影響 保持鏡像服務(wù)器隨時(shí)待命 推薦統(tǒng)一的伙伴服務(wù)器 兩個(gè)伙伴服務(wù)器采用相同版本的 SQL 兩個(gè)伙伴服務(wù)器的 SQL Server打上相同的 service pack 除非在滾動(dòng)升級(jí)中 統(tǒng)一的目錄結(jié)構(gòu) 兩個(gè)伙伴服