ORACLE的這類錯誤在ORALCE的文檔中有詳細說明但原因及措施說明不詳細本文當著重說明如何解決這類錯誤
ORAORAORAORA
特征客戶端(代理或應用服務器)有時報這類斷連錯誤
原因如果偶爾出現一次則可能為網絡原因或用戶異常中止如果經常出現則為客戶端與服務端的字符集不一致
措施如果偶爾出現可在服務端的協議配置文件PROTOCOLORA中增加一行
TCPNODELAY=YES
如果經常出現則為客戶端與服務端字符集不一致或網絡原因
客戶端的字符集在注冊表裡定義
HKEY__LOCAL__MACHINE/SOFTWARE/ORACLE/NLS__LANG
在客戶端注冊表中的TCP參數項中設置
TCPMAXDATARETRANSMITIONS=
ORA
特征達到會話允許的最大游標數
原因達到會話允許的最大游標數
措施有兩種解決方法
()
在初始化文件INIT<SID>ORA文件中增加OPEN_CURSORS的數量一般要求大於
()
在應用級與開發工具有關例如設置MAXOPEN_CURSORS等
ORA
特征某個回滾段不可用
原因()當使回滾段ONLINE時但回滾段不可用例如回滾段所在表空間OFFLINE;
() 當使回滾段ONLINE時但回滾段已ONLINE例如回滾段被使用兩次典型的案例如OPS方式時回滾段不能公有;
()刪除回滾段時回滾段中有活動的事務
措施()確保回滾段可
()從 初始化文件INIT<SID>ORA的參數ROLLBACK)SEGMENTS中刪除指定的回滾段
()
可以將回滾段所在表空間刪除取消UNDO事務
ORAx
特征表空間沒有足夠的空間供分配
原因表空間已滿存儲參數不合理NEXT太小沒有連續的區間
措施如果表空間已滿則需為表空間增加文件如果存儲參數不合理則需增加INITIAL和NEXT如果沒有連續的區間需要合並空閒的表空間
查看空間碎片用DBA_FREE_SPACE
ORA
特征當前會話無法讀到以前版本的數據
原因原因很多主要原因有下列回滾段太小太少回滾段沖突交叉提交(FETCH_ACROSS)
措施增加回滾段數量
ORA
特征共享池內存區內存不夠或產生內存碎片
原因當試圖裝載一個大包時或執行一個較大的存儲過程時而共享池沒有連續的內存空間
措施如果是內存不夠則增加SHARE)POOL_SIZE
如果是內存碎片執行alter system flush share_pool
ORA
特征觸發器工作不正常
原因一個行觸發讀取或修改變化的表(正在修改插入)時產生這種錯誤
措施檢查觸發器腳本保證引用完整性
ORAORA
特征介質故障導致數據庫宕機
原因介質故障
措施檢查硬件故障修改dbshut腳本將其中的STARTUP命令修改為
&nbs
p;
Startup open recover
Alter database open
From:http://tw.wingwit.com/Article/program/Oracle/201311/17300.html