打印本文 打印本文 关闭窗口 关闭窗口
Oracle常見問題集(四)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数6471  更新时间:2009/4/22 22:05:52  文章录入:mintao  责任编辑:mintao
前言

每一個DBA在進行資料庫管理的過程中不可避免的要遇到形形色色的錯誤(ORA-xxxx).有些錯誤由於頻繁出現、原因複雜而被DBA們戲稱之爲"經典的錯誤".其中ORA-3113

"end of fileon communication channel" 就是這樣的一個.

我們可以簡單的把這個錯誤理解爲Oracle用戶端進程和資料庫後臺進程連接中斷.不過,導致這個錯誤的原因實際上有很多種,對資料庫設置不當、任何能導致資料庫後臺進程崩潰的行爲都可能産生這個錯誤.這個錯誤的出現還經常伴隨著其他錯誤,比如說:ORA-1034

ORACLE not available.

此外,該錯誤出現的場景複雜,可能出現在:

啓動的Oracle的時侯;

試圖創建資料庫的時侯;

試圖對資料庫進行連接的時侯;

在客戶端正在運行SQL/PL/SQL的時侯;

備份/恢復資料庫的時侯;

其他一些情況下......

在論壇上也時常可以看到初級DBA對這個問題的求救. 在這裏簡單的對該問題進行一下整理.不當之處,請多指教!

 

錯誤原因種種

根據網路上大家反映的情況來看,錯誤原因大約有這些:

Unix核心參數設置不當

Oracle執行文件許可權不正確/環境變數問題

用戶端通信不能正確處理

資料庫伺服器崩潰/作業系統崩潰/進程被kill

Oracle 內部錯誤

特定SQLPL/SQL引起的錯誤

空間不夠

防火牆的問題

其他原因

在開始解決問題之前,作如下幾件事情:

1 回憶一下在出現錯誤之前你都做了什麽操作,越詳細越好;

2 查看background_dump_dest目錄中的alertSID.log文件也是你要做的事情;

3

Google一下,在互聯網上有很多資訊等著你去發現,不要什麽都問別人.當然,如果你找到了一些對你非常有幫助的東西――這篇文檔就不用看了,別耽誤你的時間,呵呵.

 

Unix核心參數設置不當/ init參數設置不當

如果資料庫在安裝過程中沒有設定正確的作業系統核心變數,可能在安裝資料庫文件的時侯

沒甚麽問題,在創建資料庫的時侯常常會出現03113錯誤.和此有關的另一個原因是init.ora

參數文件中的processes參數指定了不合理的值,啓動資料庫導致錯誤出現(當然這個歸根到

底也是核心參數的問題).

這個錯誤資訊一般如下:

ORA-03113: end-of-file on communication channel

ORA-01034: ORACLE not available

ORA-27101: shared memory realm does not exist

解決辦法有兩個:

1修改核心參數,加大相應核心參數的值(推薦);

2減小init.ora參數的Processes的值.

需要注意的是:

SEMMSL必須設定爲至少要10 + 進程數的最大值.

SEMMNS 也依賴於每個資料庫上的進程參數值.

-------------------------------------------------------------------------------

注:

這個錯誤類型只在Unix平臺上出現.Windows上如果processes的值過大,則會出現:

ORA-00068: invalid value 24200001 for parameter

max_rollback_segments, must be

between 2 and 65535 /* 此時指定的參數值超過了65535 */

或者

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ...  下一页 >> 

打印本文 打印本文 关闭窗口 关闭窗口