張艷瑩 孫映雪
1.2.內(nèi)蒙古廣播電視臺(tái) 內(nèi)蒙古 呼和浩特市 010050
媒資系統(tǒng)核心數(shù)據(jù)庫(kù)現(xiàn)有雙機(jī)備份軟件AutoStart已經(jīng)不再更新,而且沒(méi)有廠家技術(shù)支持,硬件為戴爾R720服務(wù)器已運(yùn)行7年之久,硬件老化性能下降。核心數(shù)據(jù)庫(kù)是整個(gè)媒資系統(tǒng)的心臟,一旦出現(xiàn)問(wèn)題會(huì)對(duì)整個(gè)系統(tǒng)造成致命的影響,為了提升安全等級(jí),對(duì)現(xiàn)有核心數(shù)據(jù)庫(kù)進(jìn)行了升級(jí)改造。
本次服務(wù)器采用主備模式,結(jié)構(gòu)見下圖,系統(tǒng)配置了兩臺(tái)H3C R4900服務(wù)器,操作系統(tǒng)為Windows Server 2019,預(yù)裝MS SQL Server 2019簡(jiǎn)體中文標(biāo)準(zhǔn)版,服務(wù)器部署NEC高可用集群。同時(shí)配置了接口服務(wù)、消息服務(wù)、軟件用戶的權(quán)限管理、日志管理、網(wǎng)絡(luò)校時(shí)、用戶配置、系統(tǒng)配置等模塊,支撐媒資系統(tǒng)正常運(yùn)行;通過(guò)設(shè)置策略管理,實(shí)現(xiàn)拷貝、鏡像、刪除、自動(dòng)技審素材文件等功能,并依據(jù)策略發(fā)起各類任務(wù),如圖1所示。
圖1 數(shù)據(jù)庫(kù)服務(wù)器結(jié)構(gòu)圖
系統(tǒng)內(nèi)各分布式應(yīng)用通過(guò)松耦合方法來(lái)實(shí)現(xiàn)信息交換。消息隊(duì)列的API被數(shù)據(jù)庫(kù)調(diào)用嵌入到分布式應(yīng)用中,然后發(fā)送消息到內(nèi)存或者或者磁盤隊(duì)列中,最后從內(nèi)存或者磁盤隊(duì)列中調(diào)用消息來(lái)實(shí)現(xiàn)消息的傳遞。
數(shù)據(jù)庫(kù)通過(guò)支撐消息隊(duì)列來(lái)控制應(yīng)用執(zhí)行各項(xiàng)任務(wù),比如拷貝、鏡像、刪除、自動(dòng)技審等,消息通訊機(jī)制,如圖2所示。
圖2 消息服務(wù)器設(shè)計(jì)圖
數(shù)據(jù)庫(kù)引擎是用于存儲(chǔ)、處理和保護(hù)數(shù)據(jù)的核心服務(wù),利用數(shù)據(jù)庫(kù)引擎可控制訪問(wèn)權(quán)限并快速處理事務(wù),從而滿足應(yīng)用程序處理數(shù)據(jù)的要求。
SQL Server集成服務(wù)可以處理各種各樣的數(shù)據(jù)源(例如:SQL Server、XML、TXT等),負(fù)責(zé)提取、轉(zhuǎn)換和加載數(shù)據(jù)庫(kù)內(nèi)相關(guān)數(shù)據(jù)。這個(gè)服務(wù)為構(gòu)建數(shù)據(jù)庫(kù)提供了強(qiáng)大的數(shù)據(jù)清理、轉(zhuǎn)換、加載與合并等功能。
拷貝技術(shù)是一種可以將數(shù)據(jù)從一個(gè)存儲(chǔ)位置拷貝到任意存儲(chǔ)位置,將一份數(shù)據(jù)傳遞到多個(gè)存儲(chǔ)媒介上的有效技術(shù)。數(shù)據(jù)必須實(shí)時(shí)同步,保證數(shù)據(jù)的一致性。
報(bào)表服務(wù)(Reporting Services,SSRS)從數(shù)據(jù)庫(kù)內(nèi)各式各樣的數(shù)據(jù)源提取數(shù)據(jù),創(chuàng)建、部署、管理和生成數(shù)據(jù)文件,為系統(tǒng)正常運(yùn)行提供可用的服務(wù)和編程功能。
SQL Server服務(wù)代理的作用是自動(dòng)執(zhí)行所有由數(shù)據(jù)庫(kù)發(fā)起的任務(wù),以及數(shù)據(jù)庫(kù)策略發(fā)起的復(fù)制、鏡像和自動(dòng)技審等無(wú)需人員值守的任務(wù)。
這個(gè)服務(wù)默認(rèn)是停止?fàn)顟B(tài),如需使用需要確認(rèn)這個(gè)服務(wù)的啟動(dòng)賬戶是否正確,然后手動(dòng)啟動(dòng),或系統(tǒng)設(shè)置改為自動(dòng)運(yùn)行,否則數(shù)據(jù)庫(kù)發(fā)起的自動(dòng)化任務(wù)都不會(huì)執(zhí)行。
SQL Server的全文搜索功能依賴于全文索引。全文索引由數(shù)據(jù)表構(gòu)成,與傳統(tǒng)的平衡樹索引和列存儲(chǔ)索引不同,是一種映射存儲(chǔ)分詞和行的唯一鍵的關(guān)系。
媒資系統(tǒng)是內(nèi)蒙古廣播電視臺(tái)要求全天候運(yùn)行的重要業(yè)務(wù)系統(tǒng)之一,若因?yàn)榉?wù)器崩潰或其他故障引發(fā)業(yè)務(wù)終止,節(jié)目制作將受到極大影響。因此此次數(shù)據(jù)庫(kù)升級(jí)采用了NEC高可用集群技術(shù),是一種以減少服務(wù)中斷時(shí)間為目的的服務(wù)器集群技術(shù)。
由NEC Experss Cluster集群軟件構(gòu)建集群系統(tǒng),使用服務(wù)器內(nèi)部磁盤做交接數(shù)據(jù)的集群和使用專線進(jìn)行網(wǎng)絡(luò)鏡像,實(shí)現(xiàn)不間斷系統(tǒng)故障監(jiān)視(包括因硬件、軟件或人為造成的故障)。在故障發(fā)生時(shí)自動(dòng)將業(yè)務(wù)轉(zhuǎn)移至狀態(tài)良好的服務(wù)器繼續(xù)運(yùn)行,將故障對(duì)業(yè)務(wù)的影響降到最低。
NEC Experss Cluster集群軟件利用獨(dú)立于普通應(yīng)用程序的內(nèi)存空間進(jìn)行心跳檢測(cè),有效避免了在高負(fù)荷狀態(tài)下心跳檢測(cè)超時(shí)引起的主備數(shù)據(jù)庫(kù)誤切換,保證檢測(cè)不受系統(tǒng)負(fù)荷影響。心跳檢測(cè)可采用網(wǎng)卡、COM口、磁盤心跳等多種方式,
可以同時(shí)對(duì)主備數(shù)據(jù)庫(kù)鏡像盤中的差別數(shù)據(jù)進(jìn)行同步或者恢復(fù),有效縮短了數(shù)據(jù)庫(kù)鏡像同步或者恢復(fù)所需的時(shí)間,從而提高集群運(yùn)行的性能。
無(wú)需安裝軟件客戶端,通過(guò)瀏覽器或者Java運(yùn)行環(huán)境即可訪問(wèn)管理配置系統(tǒng),可以在任意主機(jī)對(duì)數(shù)據(jù)庫(kù)進(jìn)行監(jiān)控、維護(hù)和配置操作,實(shí)現(xiàn)遠(yuǎn)程管理數(shù)據(jù)庫(kù)。
前期工作要準(zhǔn)備充分。提前一周進(jìn)行主備數(shù)據(jù)庫(kù)服務(wù)器和NEC集群安裝調(diào)試、數(shù)庫(kù)備份還原測(cè)試工作。檢修日當(dāng)天,提前將所有客戶端的主要表單保存節(jié)目單到本地。檢修時(shí)間開始前備份最新數(shù)據(jù)庫(kù),拷貝至新數(shù)據(jù)庫(kù)服務(wù)器上,還原數(shù)據(jù)庫(kù)文件,成功后將新數(shù)據(jù)庫(kù)服務(wù)器關(guān)機(jī)。
嚴(yán)密數(shù)據(jù)庫(kù)服務(wù)器更換流程。關(guān)閉媒資系統(tǒng)所有應(yīng)用服務(wù)器上正在運(yùn)行的業(yè)務(wù)軟件及策略軟件,關(guān)閉舊數(shù)據(jù)庫(kù)服務(wù)器并下架,將新數(shù)據(jù)庫(kù)服務(wù)器上架、開機(jī),等待NEC集群恢復(fù)正常。重新打開系統(tǒng)所有應(yīng)用服務(wù)器上的業(yè)務(wù)軟件及策略軟件,各類工作站重新連接數(shù)據(jù)庫(kù)。
制定應(yīng)急回退措施。若更換過(guò)程中發(fā)現(xiàn)服務(wù)器或數(shù)據(jù)庫(kù)異常且無(wú)法解決,則采用應(yīng)急回退操作。關(guān)閉媒資系統(tǒng)所有應(yīng)用服務(wù)器上正在運(yùn)行的業(yè)務(wù)軟件及策略軟件,將舊數(shù)據(jù)庫(kù)重新上架,業(yè)務(wù)服務(wù)重連數(shù)據(jù)庫(kù),測(cè)試數(shù)據(jù)庫(kù)正常。
通過(guò)IE瀏覽器登錄數(shù)據(jù)庫(kù)集群軟件,日常巡機(jī)監(jiān)測(cè)查看儀表板界面、狀態(tài)界面和鏡像磁盤界面是否正常等狀態(tài)。Server2019數(shù)據(jù)庫(kù)對(duì)鏡像同步要求極高,因此關(guān)機(jī)過(guò)程中要求數(shù)據(jù)庫(kù)必須同步開關(guān),保證數(shù)據(jù)同步。正常先啟用備數(shù)據(jù)庫(kù)及服務(wù)器,再重啟主數(shù)據(jù)庫(kù)及服務(wù)器,完成主備數(shù)據(jù)庫(kù)服務(wù)器重啟。若維護(hù)過(guò)程中發(fā)生異常需進(jìn)行鏡像磁盤操作,若單一數(shù)據(jù)庫(kù)異常則進(jìn)行差異拷貝數(shù)據(jù)操作,若主備數(shù)據(jù)庫(kù)異常則進(jìn)行鏡像復(fù)歸操作恢復(fù)到某一時(shí)間節(jié)點(diǎn)的數(shù)據(jù),若數(shù)據(jù)庫(kù)損壞則進(jìn)行全盤拷貝操作恢復(fù)數(shù)據(jù)。
升級(jí)后的SQL Server 2019數(shù)據(jù)庫(kù)作為媒資系統(tǒng)的核心,自2021年11月穩(wěn)定運(yùn)行至今,高質(zhì)量地保障了媒資系統(tǒng)安全運(yùn)行,為全臺(tái)節(jié)目制作提供了有力保障。