ORACLE數據庫常見問題診斷方法 ---(常見錯誤篇)

發表于:2008-10-27來源:作者:點擊數: 標簽:數據庫oracleOracleORACLE診斷
ORACLE的這類錯誤在ORALCE的文檔中有詳細說明,但原因及措施說明不詳細,本文當著重說明如何解決這類錯誤。 1.ORA-12571、ORA-03113、ORA-03114、ORA-01041 特征:客戶端(代理或應用 服務器 )有時報這類斷連錯誤。 原因:如果偶爾出現一次,則可能為 網絡
ORACLE的這類錯誤在ORALCE的文檔中有詳細說明,但原因及措施說明不詳細,本文當著重說明如何解決這類錯誤。


  1.ORA-12571、ORA-03113、ORA-03114、ORA-01041

  特征:客戶端(代理或應用服務器)有時報這類斷連錯誤。

  原因:如果偶爾出現一次,則可能為網絡原因或用戶異常中止,如果經常出現則為客戶端與服務端的字符集不一致。

  措施:如果偶爾出現,可在服務端的協議配置文件PROTOCOL.ORA中增加一行TCP.NODELAY=YES;

     如果經常出現,則為客戶端與服務端字符集不一致或網絡原因??蛻舳说淖址谧员砝锒x:        HKEY__LOCAL__MACHINE/SOFTWARE/ORACLE/NLS__LANG;在客戶端注冊表中的TCP參數項中設置  TCPMAXDATARETRANSMITIONS=20。      


  2.ORA-01000

  特征:達到會話允許的最大游標數。

  原因:達到會話允許的最大游標數。

  措施:有兩種解決方法:

 ?。?)在初始化文件INIT<SID>.ORA文件中增加OPEN_CURSORS的數量,一般要求大于200。

 ?。?)在應用級,與開發工具有關,例如設置MAXOPEN_CURSORS等。


  3.ORA-01545

  特征:某個回滾段不可用

  原因:

 ?。?)當使回滾段ONLINE時,但回滾段不可用,例如回滾段所在表空間OFFLINE。

 ?。?) 當使回滾段ONLINE時,但回滾段已ONLINE,例如回滾段被使用兩次,典型的案例如OPS方式時,回滾段不能公有。

 ?。?)刪除回滾段時,回滾段中有活動的事務。


  措施:

 ?。?)確?;貪L段可。

 ?。?)從初始化文件INIT<SID>.ORA的參數ROLLBACK)SEGMENTS中刪除指定的回滾段。

 ?。?)可以將回滾段所在表空間刪除,取消UNDO事務。


  4. ORA-0165x

  特征:表空間沒有足夠的空間供分配。

  原因:表空間已滿;存儲參數不合理,NEXT太??;沒有連續的區間。

  措施:如果表空間已滿,則需為表空間增加文件;如果存儲參數不合理,則需增加INITIAL和NEXT;如果沒有連續的區間,需要合并空閑的表空間。

  查看空間碎片用DBA_FREE_SPACE。


  5.ORA-01555

  特征:當前會話無法讀到以前版本的數據。

  原因:原因很多,主要原因有下列:回滾段太小、太少;回滾段沖突;交叉提交(FETCH_ACROSS)。

  措施:增加回滾段數量。


  6.ORA-04031

  特征:共享池內存區內存不夠,或產生內存碎片。

  原因:當試圖裝載一個大包時或執行一個較大的存儲過程時,而共享池沒有連續的內存空間。

  措施:如果是內存不夠,則增加SHARE)POOL_SIZE;

          如果是內存碎片,執行alter system flush share_pool。


  7.ORA-04091

  特征:觸發器工作不正常。

  原因:一個行觸發讀取或修改變化的表(正在修改、插入)時,產生這種錯誤。

  措施:檢查觸發器腳本,保證引用完整性。


  8. ORA-01242、ORA-01113

  特征:介質故障導致數據庫宕機。

  原因:介質故障。

  措施:檢查硬件故障;修改dbshut腳本,將其中的STARTUP命令修改為:

              Startup open recover

             Alter database open

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97