王園園
【摘 要】航空氣象情報及氣象資料的及時、準確、標準化獲取是保障民航安全運行的重要基礎。本文介紹了一起民航氣象數據庫常見故障,即達到進程最大連接數后導致相關用戶進程頻繁宕機問題,造成用戶無法獲取最新報文和自觀數據。本文利用Oracle數據庫中用戶端遠程連接進程的共同關鍵字“LOCAL=NO”篩選出inactive進程使用“kill -9”強行殺掉,實現在不重啟數據庫情況下解決ORA-0020問題。
【關鍵詞】民航氣象數據庫系統;Oracle;宕機;inactive;LOCAL=NO
【Abstract】Timely, accurate, standardized acquire meteorological data information of aviation is running an important basis to protect the safety of civil aviation. In this paper, we introduce a normal fault of civil aviation meteorological database system, process reach to maxProcessors led to process frequently down, so users cannot receive new message and data. We use “kill -9” command killed inactive process which have same keyword “LOCAL=NO” in Oracle database system, so we solved the error code ORA-0020 in no restart.
【Key words】Civil aviation meteorological database system; Oracle; Down; inactive; LOCAL=NO
0 引言
民航氣象數據庫系統利用數據庫技術和商用數據庫管理系統,對各類氣象資料進行有效的組織與管理,采用統一的數據模型和用戶界面,從而實現對氣象資料的有效存儲和快速檢索,并具有分布調用、高度共享和安全可靠等性能,為航空氣象服務、氣象業務與科研培訓提供有力的支持。航空氣象情報及氣象資料的及時、準確、標準化獲取是保障民航安全運行的重要基礎。本文介紹了一起由數據庫進程數達到最大導致民航氣象數據庫進程頻繁宕機故障,并給出了故障問題處理方法。
1 民航數據庫系統結構簡介
民航氣象數據庫系統是具有飛行氣象情報及氣象資料的制作、交換、備供、存儲等功能的信息系統,包括通信分系統、數據庫分系統、預報平臺及服務平臺四部分[1],如圖1所示。
1.1 通信分系統
通信分系統是民航氣象數據庫系統的基礎系統,它主要實現各類氣象資料的接收、檢查、處理,并根據一定的規則向其它系統及地區中心進行資料分發,同時實現氣象中心、地區中心與航站之間的數據交換。通信分系統將獲取的各種氣象數據發送給數據庫分系統,數據庫分系統將這些數據進行分類、解析和處理后存儲在數據庫中。
1.2 數據庫分系統
數據庫分系統采根據存儲數據的用途及時間劃分為實時庫、歷史庫及臨時庫,分別滿足不同的業務與服務的要求。數據庫分系統又分為資料處理子系統和數據庫管理子系統。
(1)資料處理子系統對服務器data目錄下接收到的氣象信息進行分析分解,質量控制后入庫;
(2)數據庫管理子系統采用C/S模式,對資料處理、數據庫等進行實時監控與管理,預報平臺與服務平臺則通過獲取Oracle數據庫中的氣象資料,以不同的形式展現給用戶。數據庫管理子系統主要側重于對數據庫中氣象資料的管理。提供的主要功能有:系統登錄、資料處理、數據庫管理、數據庫恢復、日志和統計、告警、用戶管理、進程管理、系統配置、窗口、幫助等。
1.3 預報平臺
預報平臺(民航氣象信息綜合處理系統)利用氣象實時數據庫資料,通過對數據庫中的氣象資料進行檢索、分析、處理,制作成文本、圖形等形式的氣象產品,為航空氣象預報人員提供服務。
1.4 服務平臺
氣象信息服務平臺從數據庫中提取相關產品,以WEB形式展示向航空氣象用戶提供航空氣象產品及服務。
2 故障現象
民航氣象數據庫系統數據庫子系統運行環境:硬件環境為IBM服務器;操作系統為AIX5.2;數據庫系統為oracle 10g。
數據庫運行一段時間后,資料處理子系統相關進程自動停止運行,導致621客戶端及相關協議單位無法檢索到最新資料,且重新啟動后再次停止運行或直接無法重新啟動。
3 故障分析
通過查看數據庫相應進程診斷文件方法檢查故障原因,數據庫診斷文件是獲取有關數據庫活動信息的一種方法,用于解決數據庫出現的一些問題,主要包含有關數據庫中出現的重要事件的一些信息,這些文件能更好的對數據庫進行日常的管理。
5 結束語
本文介紹了一起民航氣象數據庫常見故障,即達到進程最大連接數后導致相關用戶進程頻繁down機問題,造成用戶無法獲取最新報文和自觀數據,一般較為普遍的處理方法為采用修改系統最大進程連接數后重新啟動數據庫,但是民航氣象數據庫對系統停機重啟要求較高,重啟數據庫將導致用戶無法及時獲取數據,具有一定的安全風險。本文主要利用Oracle數據庫中遠程連接進程的共同特點,都含有關鍵字“LOCAL=NO”,然后經根據關鍵字“LOCAL=NO”篩選出inactive進程使用“kill -9”強行殺掉[4],此方法可以實現在不重啟數據庫情況下解決ORA-0020問題。
【參考文獻】
[1]太極計算機股份有限公司,民航氣象衛星傳真廣播系統用戶手冊[M].1-60.
[2]李月軍.數據庫原理與設計(Oracle版)[M].北京:清華大學出版社,2012.
[3]AP-117-TM-03R1,民用航氣象數據庫系統業務運行管理規定[S].民航局空管辦,民航局空管局,2009.
[4]李愛武.基于Linux的Oracle數據庫管理[M].北京:北京郵電大學出版社,2008.
[責任編輯:朱麗娜]