姜陳威 紀立恒 鄧曉璐
摘要:本文分析了基于C/S架構的福建省市縣預報服務平臺系統(tǒng)整體運行過程,結合本市遇到的幾個典型故障進行原因分析,最終解決問題。重點介紹平臺故障發(fā)生時的表現(xiàn),以及針對這些典型故障的具體處理方法。
關鍵詞:C\S架構;市縣預報服務平臺;故障
中圖分類號:X55 文獻標識碼:A 文章編號:1007-9416(2019)05-0163-01
0 引言
為提高預報業(yè)務的工作規(guī)范和工作效率,減少誤報率,根據(jù)我省氣象系統(tǒng)軟件集約化管理目標,以及各市縣局預報員在使用中的總結業(yè)務流程的整改意見,保障市縣預報服務平臺穩(wěn)定運行成為預報業(yè)務重中之重。
市縣平臺采用C/S模式構建數(shù)據(jù)交互模式形式開發(fā),其穩(wěn)定性相對較好,但便捷性較差,因該平臺有掛接數(shù)據(jù)庫,所以用久了難免有一些故障發(fā)生,本文從漳州市局市縣平臺服務器出現(xiàn)的較為典型的故障進行案例分析,希望能為廣大平臺管理員提供幫助。
1 故障分析
1.1 Oracle賬號被鎖定
因為C/S架構的原因,大部分情況下都不會登錄到Oracle庫中,但是偶爾對客戶端進行升級時,需要登錄Oracle時就常出現(xiàn)故障,較為典型故障就是提示Oracle賬號被鎖定。
解決辦法:首先用管理員賬號登陸plsql(如圖1所示),具體步驟為打開plsqldev.bat,然后用戶名密碼都不用填,Database選擇ORCL和Connect as選擇SYSDBA,點擊ok按鈕。
接下來在界面中選擇sql window框,最終在SQL Window命令框中將輸入ALTER USER Fodis2 ACCOUNT UNLOCK,點擊“運行”按鈕,賬號解鎖就完成了。退出程序后,重新登錄Oracle庫賬號就恢復正常狀態(tài)。
1.2 出現(xiàn)ORA-12154連接錯誤
TNS:could not resolve the connect identifier specified 連接錯誤。
在使用plsql developer 連接oracle數(shù)據(jù)庫的時候,經(jīng)常出現(xiàn)ORA-12154:TNS:could not resolve the connect identifier specified 連接錯誤,經(jīng)過多次嘗試重新連接后并認真分析原因,發(fā)現(xiàn)無法解析指定連接的標識符是因為缺少一個環(huán)境變量,因此開始嘗試添加變量TNS_ADMIN。
解決辦法:右鍵點擊我的電腦->屬性->高級->環(huán)境變量->Administrator的用戶變量->新建一個變量,變量名為:TNS_ ADMIN,變量值為:%ORACLE_HOME%/NETWORK/ADMIN/,其中%ORACLE_HOME%即Orcale安裝路徑。
此次操作目的是為了讓系統(tǒng)能找到tnsnames.ora,因為設置的該環(huán)境變量的值為tnsnames.ora文件所在路徑,特別是重裝或進行其它操作后,忘了設置TNS_ADMIN變量,PL/SQL登陸就會報“無法解析指定的連接標識符”錯誤,如果本機上安裝了ORACLE,并且設置了ORACLE_HOME環(huán)境變量,那么會自動在%ORACLE_ HOME%/NETWORK/ADMIN/位置查找tnsnames.ora文件。
理論上按照以上操作應該是可以連接了,但有時出現(xiàn)某些客戶端在plsql連接時依舊出現(xiàn)問題,連接不上,經(jīng)多次檢查發(fā)現(xiàn),文件路徑中缺少tnsnames.ora文件。因此自己創(chuàng)建了一個tnsnams.ora文件,根據(jù)其他運行正常服務器里面文件人工敲進代碼,重新測試,發(fā)現(xiàn)提示文件有錯誤。后面重新將該文件對比分析后發(fā)現(xiàn),里面的代碼在MYOCL =***位置必須要在頂格寫,代碼前面不能有空格,重新修改后恢復正常,故障解決。
1.3 Oracle連接緩慢
有縣局反映打開客戶端時,數(shù)據(jù)庫一直連接不上,客戶端處于假死狀態(tài),經(jīng)檢查發(fā)現(xiàn)是通過sql developer連接時,一直處在logging on界面,也沒有報錯,通過sqlplus連接,也是一直處在連接界面,但一直未登錄成功,在放置一個小時左右后成功登陸客戶端。服務器及Oracle實例和監(jiān)聽重啟也無法解決這個問題,最終登錄到服務器,通過sqlplus as sysdba確定是可正常連接和使用,判斷oracle實例沒有問題,問題還是出在監(jiān)聽上。
嘗試著關閉監(jiān)聽后,發(fā)現(xiàn)還有一個進程號占用1521端口,但在任務管理器上找不到這個進程id,通過taskkill也無法結束這個進程,將端口改為1522,剛開始可以連接,過一會出現(xiàn)未響應。經(jīng)過長時間跟蹤查找,最后注意到tnsping的時候有時延時非常低,而有時達到十幾秒,判定在本地tnsping延時過高。
經(jīng)查閱相關資料后發(fā)現(xiàn),本地tnsping延時過高可能是連接數(shù)量太多,出現(xiàn)這個原因一般是因為listener.log文件過大,經(jīng)過查看listener.log,發(fā)現(xiàn)文件已經(jīng)達到4.9G。將監(jiān)聽停止然后重命名listener.log,然后再新建一個空的listener.log,tnsping值恢復正常,重新打開客戶端后發(fā)現(xiàn)馬上連接數(shù)據(jù)庫成功,并迅速進入客戶端,故障排除。
2 結語
福建省市縣預報平臺為省市縣統(tǒng)一的基礎平臺,保證系統(tǒng)一致性和穩(wěn)定性是做好氣象預報服務的前提。如何保證平臺穩(wěn)定運行是系統(tǒng)保障人員一直思考的問題,本文以漳州市氣象局在使用平臺過程中遇到的一些典型故障分析,對故障解決辦法進行總結,希望能以此給大家提供借鑒。
參考文獻
[1] 楊志勇,段卿,顏東.福建省市縣預報服務平臺的設計和實現(xiàn)[J].福建電腦,2018(8):135-136.
[2] 王景紅,趙世發(fā),張和平,雷亞靜.共享市縣氣象信息服務系統(tǒng)平臺的設計與實現(xiàn)[J].陜西氣象,2005(1):37-39.