郭曉佳 江彩英 謝丹
摘 要:南平市氣象局有鄉鎮氣象信息服務站、防災減災氣象移動指揮平臺、縣市預報服務平臺、微信、微博等平臺應用Oracle數據庫。隨著氣象業務不斷擴展,需要保存的數據量不斷增長,對氣象業務平臺尤其是數據庫系統運維管理提出了更高要求。氣象Oracle數據庫的正常運行對確保氣象業務的正常開展具有重要意義。加強氣象業務平臺Oracle數據庫運行維護管理,對指導氣象業務平臺與支撐數據庫平穩可靠運行具有參考意義。
關鍵詞:氣象業務系統;Oracle數據庫;CMACAST系統;數據庫性能
DOI:10.11907/rjdk.171610
中圖分類號:TP319 文獻標識碼:A 文章編號:1672-7800(2017)009-0145-03
Abstract:At present large Oracle database system has been deeply used in various business, nanping meteorological administration weather the normal operation of the Oracle database to ensure the normal conduct of zhuhai meteorological operations has the vital significance. This article provide meteorological operations platform support Oracle database maintenance of the key points in the process of operation, to guide the various meteorological business platform and stable and reliable operation support database has reference significance.
Key Words:meteorological operational system; ORACLE database;CMACAST system;database performance
1 氣象數據庫系統維護
1.1 數據庫系統運行環境維護
氣象數據庫管理人員在安裝數據庫前必須做好系統安全維護的基礎工作,一是構建一個安全的內網網絡環境,二是運用操作系統的策略配置維護業務系統運行的基礎環境。
網絡上每一臺計算機的安全狀況、網絡安全設備策略配置參數以及管理人員日常的細心維護,都關系到整個內網網絡環境安全。網絡上任何一臺計算機的安全漏洞都是整個內網安全的短板。所以,保證網絡中每臺計算機的安全是安全網絡環境的第一步。市級氣象局在各網絡邊界通過布設網閘、防火墻等安全設備,完全隔離了內網和外網的所有通信協議連接,可有效防止外網入侵攻擊;管理人員必須時常關注網絡運行情況,及時將多種安全產品無縫結合并升級,維護好網絡安全產品。
氣象業務系統使用的Oracle數據庫安裝在Windows操作系統下,首先,應及時升級Windows各種補丁程序,規避可能的系統錯誤和風險,保證Oracle數據庫系統的正常運行。其次,要加強操作系統帳號和密碼的維護和管理,密碼設置和帳號管理要符合安全性要求。第三,在操作系統上必須關閉不必要的服務和端口。第四,管理人員要查看系統日志,檢查錯誤發生的原因,尋找攻擊者留下的痕跡。
1.2 Oracle數據庫系統安裝與運行維護
Windows下Oracle系統安裝應注意事項:①Oracle安裝文件所在路徑以及安裝路徑不要有中文或空格;②..\\product\\11.2.0\\dbhome_5\\NETWORK\\ADMIN\目錄下tnsnames.ora和listener.ora文件HOST=后地址要一致,否則在安裝完成后可正常使用的EnterPrise Manager Console (Oracle企業管理器)在機器重啟后無法正常使用。
安裝好Oracle軟件后,系統會創建7個服務。在控制面板 “服務”選項中可以看到如下服務: OracleVssWriterORCL、OracleServiceORCL、OracleOraDb11g_homes1TNSListener、OracleOraDb11g_homes1ClrAgent 、OracleMTSRecoverySerice、 OracleJobSchedulerORCL、OracleDBConsoleORCL。其中OracleServiceORCL是Oracle的核心服務[1],只有該服務啟動Oracle才可正常啟動。目前開發程序和數據庫管理要使用PL\\SQL Developer Enterprise 和Manager(企業管理器OEM), 因此OracleOraDb11g_homes1TNSListene和OracleDBConsoleORCL兩個服務也必須開啟。
1.3 運行環境與數據庫應急備份
為防止后臺數據庫崩潰影響氣象業務平臺的正常運行,可安裝一臺服務器用于數據庫的冗余備份。備份服務器操作系統及相關配置與主用服務器一樣,然后在其上配置一組相同數據庫。當主用數據庫服務器發生故障時,將業務平臺數據庫的鏈接配置指向備份服務器即可。在安裝備份數據庫時可采用“導入導出”方法,步驟如下:①在備份機上安裝與主用數據庫相同的Oracle版本,建立好相同的用戶名與密碼;②將主用機上的庫表導出。打開電腦cmd命令窗口,輸入以下命令:exp 數據庫名/數據庫密碼@連接實例名(一般為orcl) owner=數據庫用戶 file=導出路徑和命名。將生成的dmp文件拷入備用機,在備用機上將庫表導入。打開電腦cmd命令窗口,輸入以下命令: imp數據庫名/數據庫密碼@連接實例名(一般為orcl) file=備份文件目錄 full=y。備用機安裝配置好后,采用與主用機軟件同步數據方式即可完成數據庫的冗余熱備。endprint
1.4 氣象Oracle數據庫日常維護內容
1.4.1 Oracle數據庫數據來源維護
氣象業務平臺數據來源有4個部分:①CMACast系統。CMACAST是目前氣象部門正在使用的衛星接收系統[2],其接收的資料是預報員進行天氣分析及本地業務平臺的數據來源;②自動觀測氣象站。目前南平市建有200余個自動氣象觀測站,市局中心站接收來自戶外自動氣象站觀測數據;③省局共享服務器數據。這些數據由省局推送到市局數據服務器,主要是全省各地的雷達數據和其它地市自動站數據;④預報人員天氣分析得出的預報結論、預警信息等電子文檔。
氣象數據庫管理人員首先需要做好數據源系統維護,確保入庫原始數據的完整與準確[3]。
1.4.2 氣象數據庫維護工作
管理人員要對氣象業務平臺使用的Oracle數據庫進行維護,主要維護內容有日志文件清理、數據庫性能檢測、數據庫安全檢查等。
(1)Oracle數據庫日志文件清理 。數據庫管理人員需要對Oracle數據庫運行中日志文件進行清理。刪除的文件主要有Oracle 系統產生的日志文件,包括監聽日志listener.log、跟蹤日志adump、bdump、udump,以及歸檔日志、無用的備份等。
listener.log是Oracle的監聽日志[4],在文件中記錄了數據庫實例注冊操作、客戶的連接等日志。監聽日志可幫助管理員診斷數據庫問題,如果監聽日志過大可能會引起故障或性能上的問題。清理方法如下:輸入命令lsnrctl進入交互模式,關閉監聽日志LSNRCTL>set log_status off,刪除listener.log,打開監聽日志LSNRCTL>set log_status on。
Oracle數據庫上打開了trace on功能,會產生跟蹤日志文件,這些文件放在bdump、cdump、udump目錄下。其中bdump用來存儲Oracle后臺進程生成的輸出文件,cdump用于存儲內核進程生成的輸出文件,udump用于存儲用戶生成的輸出文件。命名為orcl_*.trc的可以刪除,而alert_orcl.log是不能刪除的。
Oracle數據庫歸檔日志一般位于\\flash_recovery_area\\ORCL\\ARCHIVELOG目錄下,以日期為名的文件夾存放,刪除時僅保留最近幾天日志用于數據庫恢復,但在controlfile中的ARCHIVELOG信息需要利用RMAN進行徹底刪除。
(2)Oracle數據庫自帶的OEM工具對數據庫進行控制和管理。Oracle數據庫自帶的OEM(Oracle Enterprise Manager, Oracle企業管理器)可便捷進行數據庫控制和管理[5],其直觀而方便的圖形化界面GUI,可幫助管理人員完成數據庫對象、用戶權限、數據文件、定時任務管理、參數配置、備份與恢復、性能檢查與調優等操作。使用方法:打開瀏覽器,輸入https://localhost:端口(默認為1158)/em/console/logon/logon,在彈出的登陸頁面中輸入用戶名:SYS及密碼,連接身份選擇“SYSDBA”進入Web管理工具。在數據庫實例下有7個選項卡,分別為主目錄、性能、可用性、服務器、方案、數據移動、軟件和支持。其中“主目錄”選項下可以查看數據庫狀態、實例名、開始運行時間、當前CPU使用情況、活動會話數據、SQL響應時間、診斷概要、空間概要、預警等信息。
OEM可幫助管理人員對數據庫故障進行定位。例如:管理人員在某日巡視時發現“主目錄”選項下CPU使用率高,在“性能”選項下可查看一段時間內的TOP事務,點擊“頂級活動”,在彈出的頂級活動圖表下點擊“SQL ID”可以查看SQL詳情,可通過分析sql語句進行相應的調整優化。
AWR與ASH報告也是管理人員進行數據庫性能分析的工具,它能幫助數據庫管理人員全面掌握數據庫性能、分析數據庫故障。AWR(Automatic Workload Repository)自動工作負載信息庫[6]是Oracle 10 及以上版本提供的一種性能收集和分析工具,它采集與DB性能相關的統計數據,數據庫各方面性能(包括硬件、軟件、應用、數據庫)情況;ASH(Acitve Session History)是一個會話級別的性能診斷報告,可作為AWR的補充。OEM提供的便捷工具可生成AWR與ASH分析報告。在“服務器”選項的“統計信息管理”下,AWR基線點選名稱“SYSTEM_MOVING_WINDOW”下“報告”,可生成“基線SYSTEM_MOVING_WINDOW AWR報告”。在“性能”選項下可通過“運行ASH報告”指定報告時間段與過濾器,生成ASH報告。
2 常見故障及處理方法
氣象業務系統及其支撐數據庫經常會出現一些問題,理清并熟悉故障處理思路對提高系統維護效率有著重要意義。常見故障及處理方法如下:
(1)當出現氣象業務系統顯示數據不全或提示某類產品缺失時,管理人員應追溯檢查數據來源,保證入庫原始數據正常準確。
(2)當數據庫服務與氣象應用服務器連接不正常時,管理人員應首先檢查網絡連接,在確認機器網卡與網絡連接設備正常情況下,可通過重啟數據庫服務器或應用服務器來恢復。這類故障主要由于系統錯誤或服務被掛起,將機器重啟故障一般可排除。
(3)當數據庫系統被病毒破壞時,管理人員應及時使用殺毒軟件或電腦病毒專殺工具進行處理。如果仍無法解決,可應急啟用備份數據庫,將業務平臺數據庫鏈接指向備份數據庫,重裝數據庫服務器操作系統來恢復。
(4)當業務系統空間達到極限報錯時,管理人員需要檢查日志文件、臨時文件和臨時表空間,刪除大的臨時數據庫表文件或access.log文件。
(5)當數據庫管理人員誤刪表空間、數據文件或用戶時,數據字典中關于表空間信息都會被刪除,唯一的方法是從備份中恢復。
(6)當數據庫管理人員在使用 imp命令在備份機上恢復dmp數據時,如果出現系統提示字符集錯誤,就是在數據庫表中存儲了中文,存儲過程使用了中文編碼。這時需要將備份機上數據庫字符集、客戶端字符集、新配置的環境值改成dmp文件一樣的字符集。
3 結語
氣象Oracle數據庫的平穩正常運維非常重要,管理人員在全面掌握業務數據流程的同時必須加強對氣象Oracle數據庫的管理和維護。要經常對數據庫作備份,且備份的內容一定要作恢復性驗證[7]。數據庫系統出錯或管理人員誤操作后一定要保留現場,尋求軟件開發公司的技術支持。
參考文獻:
[1] 付國輝.企業級ORACLE數據庫的性能優化研究探討[D].長春:吉林大學,2013.
[2] 王春芳,李湘,陳永濤,等.中國氣象局衛星廣播系統(CMACast)設計[J].應用氣象學報,2012(1):113-120.
[3] 郭曉佳,江彩英,謝丹,等.氣象業務服務器管理與維護[J].軟件導刊,2016 (12):101-103.
[4] 李勛章.網絡日志監控及安全審計系統的設計與實現[D].成都:電子科技大學,2012.
[5] 陳春松.使用OEM 10g Grid Control進行Oracle數據庫環境集中管理[J].計算機系統應用,2010(3):217-220.
[6] 張文峰,彭小斌,林根深.AWR技術在ORACLE自動管理中的應用[J].中國數字醫學,2014(8):114-115.
[7] 方劍鋒.災難備份技術的應用研究與實現[D].上海:華東師范大學,2009.
(責任編輯:杜能鋼)endprint