ORA-01552: 非系統表空間
客戶告知,在登入Web應用的時候報錯:ORA-01552: 非系統表空間 'USERS' 不能使用系統回退段。
系統管理員建議是將UNDO表空間替換掉:建新表空間,讓其投入使用,然後刪掉舊的UNDO表空間。
我覺得資料庫的問題,操作需謹慎,先穩住各方的情緒,然後檢視一下其資料庫的設定,發現有如下問題:
SQL> show parameter undo;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string
資料庫版本為10G,按說表空間是建議設定為自動管理。
繼續收集資訊:
檢視其回滾段資訊:
發現所有的segment均為offline的狀態:
SQL> select segment_name, tablespace_name, status from dba_rollback_segs;
SEGMENT_NAME TABLESPACE_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
_SYSSMU1$ UNDOTBS1 OFFLINE
_SYSSMU2$ UNDOTBS1 OFFLINE
_SYSSMU3$ UNDOTBS1 OFFLINE
_SYSSMU4$ UNDOTBS1 OFFLINE
_SYSSMU5$ UNDOTBS1 OFFLINE
_SYSSMU6$ UNDOTBS1 OFFLINE
_SYSSMU7$ UNDOTBS1 OFFLINE
_SYSSMU8$ UNDOTBS1 OFFLINE
_SYSSMU9$ UNDOTBS1 OFFLINE
_SYSSMU10$ UNDOTBS1 OFFLINE
確定了一下,其資料庫已經做過全備。
修改UNDO相關引數:
SQL> alter system set undo_tablespace=UNDOTBS1 scope=spfile;
SQL> alter system set undo_management=auto scope=spfile;
$ sqlplus / as sysdba
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.
Total System Global Area 188743680 bytes
Fixed Size 2082728 bytes
Variable Size 113248344 bytes
Database Buffers 67108864 bytes
Redo Buffers 6303744 bytes
Database mounted.
Database opened.
SQL> show parameter undo;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO ---------------------引數已生效,UNDO為自動管理。
undo_retention integer 900
undo_tablespace string UNDOTBS1 ----------------------已指定UNDO表空間名。
SQL>
檢視回滾段狀態:
SQL> select segment_name, tablespace_name, status from dba_rollback_segs;
SEGMENT_NAME TABLESPACE_NAME STATUS
------------------------------ ------------------------------ ----------------
SYSTEM SYSTEM ONLINE
_SYSSMU1$ UNDOTBS1 ONLINE
_SYSSMU2$ UNDOTBS1 ONLINE
_SYSSMU3$ UNDOTBS1 ONLINE
_SYSSMU4$ UNDOTBS1 ONLINE
_SYSSMU5$ UNDOTBS1 ONLINE
_SYSSMU6$ UNDOTBS1 ONLINE
_SYSSMU7$ UNDOTBS1 ONLINE
_SYSSMU8$ UNDOTBS1 ONLINE
_SYSSMU9$ UNDOTBS1 ONLINE
_SYSSMU10$ UNDOTBS1 ONLINE
登入到應用系統做測試業務,在系統中新增一條記錄,然後刪掉。並無報錯。
OK!
已建議管理員立刻手動發起全庫備份,密切觀察資料庫空間和日誌狀態。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/20802110/viewspace-1124131/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORA-01552 非系統表空間不能使用系統回滾段處理
- 非系統表空間損壞,rman備份恢復
- oracle 系統表空間Oracle
- MySQL 系統表空間檔案解析MySql
- MySQL 增加InnoDB系統表空間大小MySql
- 應用系統按表空間的應用方式使用,表空間的配置
- 回滾段表空間損壞處理(ORA-01552)處理方法
- 系統臨時表空間不足問題
- 移動資料檔案、系統表空間檔案、臨時表空間檔案
- MySQL 減少InnoDB系統表空間的大小MySql
- 透過rman備份system系統表空間
- oracle系統表空間過大問題處理Oracle
- MySQL InnoDB系統表空間資料檔案配置MySql
- 恢復案例:歸檔模式下丟失非系統表空間資料檔案的恢復模式
- 透過xtts遷移單例項檔案系統表空間到RAC ASM儲存表空間TTS單例ASM
- 通過xtts遷移單例項檔案系統表空間到RAC ASM儲存表空間TTS單例ASM
- 分析表空間空閒率並收縮表空間
- 臨時表空間在非歸檔模式下丟失模式
- MySQL InnoDB 共享表空間和獨立表空間MySql
- 管理表空間(表空間的屬性)轉貼
- 表空間管理之bigfile表空間設定
- 遷移SYSTEM表空間為本地管理表空間
- MySQL InnoDB 共享表空間和獨立表空間MySql
- BI系統中 關於oracle表空間的規劃方法Oracle
- Oracle表空間Oracle
- PostgreSQL:表空間SQL
- Mysql表空間MySql
- 表空間sqlSQL
- oracle 表空間Oracle
- PostgreSQL 表空間SQL
- 刪除表空間和表空間包含的檔案
- 跨平臺表空間遷移(傳輸表空間)
- MacPro系統佔用空間太大Mac
- DATAFILE SHRINK 釋放系統空間
- System表空間在非歸檔模式下丟失怎麼辦模式
- 非歸檔庫誤刪表空間後的資料恢復資料恢復
- Shell磁碟空間和表空間告警程式
- Oracle的邏輯結構(表空間、段、區間、塊)——表空間Oracle