2.3 復(fù)制流程
事務(wù)日志實時捕獲器實時監(jiān)控源SQLServer事務(wù)日志文件和捕獲其變化數(shù)據(jù);事務(wù)日志分析器通過數(shù)據(jù)字典將日志數(shù)據(jù)解析還原成數(shù)據(jù)庫記錄,并過濾不需要鏡像的表或其他數(shù)據(jù)庫對象;傳輸控制器從任務(wù)隊列中取出記錄數(shù)據(jù)傳輸至鏡像服務(wù)器。鏡像服務(wù)器接收隊列將記錄數(shù)據(jù)保存至事務(wù)隊列和Snapshot文件中;SQL應(yīng)用機(jī)構(gòu)掃描事務(wù)隊列,將提交事務(wù)應(yīng)用到目標(biāo)SQLServer。
2.4 實時事務(wù)捕捉及解析
鏡像系統(tǒng)通過內(nèi)嵌的Windows文件系統(tǒng)驅(qū)動程序?qū)崟r捕捉SQLServer數(shù)據(jù)庫的日志I/O及數(shù)據(jù)塊。其具備以下技術(shù)特點:
第一,鏡像系統(tǒng)在SQLServer數(shù)據(jù)庫內(nèi)安裝少量對象用來存儲需復(fù)制的信息,但這些對象從創(chuàng)建時就被設(shè)置成禁用狀態(tài),不參與復(fù)制工作,也不會影響數(shù)據(jù)庫結(jié)構(gòu)。
第二,文件系統(tǒng)驅(qū)動程序的捕捉完全獨立于SQLServer數(shù)據(jù)庫進(jìn)程,因此鏡像系統(tǒng)對SQLServer數(shù)據(jù)庫的性能影響極小。
第三,文件系統(tǒng)驅(qū)動程序僅捕獲需要復(fù)制的數(shù)據(jù)庫的日志文件,且僅捕獲其寫操作,忽略其他文件的任何操作。因此,對操作系統(tǒng)性能影響也極小。
第四,只有發(fā)生變化的日志文件塊才會被捕捉,而不是整個日志文件,因此提高了解析性能,降低了網(wǎng)絡(luò)傳輸流量。
事務(wù)日志分析器根據(jù)數(shù)據(jù)字典依次解析日志文件塊,獲取該記錄的操作類型、涉及對象等,忽略不在數(shù)據(jù)字典中的對象并放棄該日志記錄的后續(xù)解析。
當(dāng)DDL語言更改了數(shù)據(jù)庫結(jié)構(gòu)時,事務(wù)日志分析器將通知數(shù)據(jù)字典使其動態(tài)調(diào)整對象結(jié)構(gòu)。因此數(shù)據(jù)字典具備自適應(yīng)能力,無需重新啟動即可解析后續(xù)日志文件塊。
2.5 傳輸控制
鏡像系統(tǒng)的傳輸協(xié)議基于TCP/IP實現(xiàn)。傳輸控制器記錄當(dāng)前傳輸成功的事務(wù)點。當(dāng)連接中斷等因素導(dǎo)致傳輸失敗,傳輸控制則停止傳輸工作,嘗試連接直至成功。
鏡像系統(tǒng)可創(chuàng)建多個通道實現(xiàn)并行傳輸,提高傳輸效率。
2.6 應(yīng)用數(shù)據(jù)
鏡像系統(tǒng)將客戶端傳送到信息轉(zhuǎn)化為SQL語句,并按照在源數(shù)據(jù)庫中的Commit順序發(fā)送給目標(biāo)SQLServer數(shù)據(jù)庫執(zhí)行。
2.7 基準(zhǔn)裝載
基準(zhǔn)裝載器使用SQLServer數(shù)據(jù)庫提供的在線備份功能,將源數(shù)據(jù)庫備份出來,還原至目標(biāo)數(shù)據(jù)庫,實現(xiàn)源和目標(biāo)數(shù)據(jù)庫基準(zhǔn)一致。
3。技術(shù)特性
1)目標(biāo)數(shù)據(jù)庫狀態(tài)
目標(biāo)SQLServer數(shù)據(jù)庫處于運行狀態(tài),能讀能寫,運行的目標(biāo)系統(tǒng)保證了系統(tǒng)的一致性。
2)兩階段檢查(2PC)
在傳輸階段和數(shù)據(jù)庫記錄提交階段均設(shè)置成功檢查點。兩階段檢查可防止如網(wǎng)絡(luò)連接斷開、目標(biāo)數(shù)據(jù)庫沒有運行、進(jìn)程崩潰等意外因素發(fā)生造成的事務(wù)丟失。
3)特性列表
4)其他功能
定時鏡像計劃,系統(tǒng)還提供便捷的定時鏡像計劃。鏡像計劃作業(yè)可配置信息字段:開始時間、結(jié)束時間和日期以及在這段時間之內(nèi)的鏡像頻率、需要鏡像數(shù)據(jù)庫。定時鏡像計劃類似于基準(zhǔn)裝載,均通過SQLServer數(shù)據(jù)庫提供在線備份功能實現(xiàn)。
數(shù)據(jù)庫備份存儲,鏡像系統(tǒng)可將基準(zhǔn)裝載或定時鏡像計劃使用的數(shù)據(jù)庫備份保存在磁盤上;系統(tǒng)采用時間戳命名備份文件。用戶可調(diào)節(jié)保存的備份版本數(shù)量或時間;用戶可手工在SQLServer企業(yè)管理將數(shù)據(jù)庫備份還原至數(shù)據(jù)庫中。
基于Web的任務(wù)監(jiān)控和配置管理,鏡像系統(tǒng)提供基于WEB的監(jiān)控、管理平臺,用戶可以通過瀏覽器即可管理全網(wǎng)的鏡像代理、鏡像服務(wù)器、傳輸備份策略以及任務(wù)監(jiān)控。
鏡像任務(wù)監(jiān)控是鏡像系統(tǒng)的一個組成部分,用來實時的監(jiān)控信息包括:
從主(源)服務(wù)器到備(目標(biāo))服務(wù)器數(shù)據(jù)復(fù)制的結(jié)果;
鏡像客戶端和鏡像服務(wù)器的工作狀態(tài)。