程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> WINDOWS下ORA-1691故障處理

WINDOWS下ORA-1691故障處理

編輯:Oracle數據庫基礎
 

最近在客戶方一次故障中,發現oracle告警日志出現ORA-1691的頻繁錯誤,對此進行了相關的排除,最終把該問題解決了。下面來講解一下排除的過程。

【正文】

以下給大家講解一下整個處理的過程和思路。

1.1     生產環境:

  Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
  Windows server 2008 R2 Enterprise

在巡檢客戶的數據庫過程中,發現該數據庫的告警日志頻繁出現ORA-1691的錯誤:
Fri Oct 10 13:15:45 2014
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 128 in tablespace              LOB_TABLESPACE
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 8192 in tablespace              LOB_TABLESPACE
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 128 in tablespace              LOB_TABLESPACE
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 8192 in tablespace              LOB_TABLESPACE
Fri Oct 10 13:15:45 2014
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 128 in tablespace              LOB_TABLESPACE
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 8192 in tablespace              LOB_TABLESPACE
ORA-1691: unable to extend lobsegment PROTECT.SYS_LOB0000013803C00004$$ by 128 in tablespace              LOB_TABLESPACE

1.2    錯誤分析:

對此查看了下該表空間LOB_TABLESPACE的使用情況:

發現該表空間的空間情況已滿,無法寫入到數據文件,故報ORA-1691的錯誤。由於在windows下系統限制MAX已經是最大值,故必須向表空間添加新的數據文件。

二   解決辦法

2.1    故障處理:

Oracle管理員權限下進行:
給現有的表空間添加數據文件:
SQL> alter tablespace LOB_TABLESPACE add datafile 'D:\ORACLE\ORADATA\PROTECT\LOB04.dbf' size 2G autoextend ON;
 
給當前數據文件設置自動擴展,每次增長100M,最大值為30G。(根據實際情況設置,如不去指定參數,默認擴展為操作系統最大值)
SQL> alter database datafile 'D:\ORACLE\ORADATA\PROTECT\LOB04.dbf'autoextend on next 100M maxsize 30G;
 

2.2          總結

在windows下單個數據文件大小會受操作系統限制影響,即使存放磁盤有足夠的空間仍無法寫入,故出現上述錯誤。將表空間從文件系統改為ASM文件系統,可以突破這個瓶頸。  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved