臨時表空間資料檔案損壞的解決
臨時表空間資料檔案丟失的恢復
臨時表空間資料檔案丟失資料庫可以開啟,可以通過重建一個臨時表空間並設定為預設或者新建一個屬於臨時表空間的資料檔案,並刪除已經丟失的資料的方法來恢復。
1.丟失臨時表空間的資料檔案 ,資料庫可以正常開啟。
SQL> col file for a25
SQL> select f.file#,t.ts#,f.name "file",t.name"tablespace" from v$tempfile f,v$tablespace t where f.ts#=t.ts#;
FILE# TS# file tablespace
---------- ----------------------------------- ------------------------------
1 3 E:\SYSORADATA\TEMP01.DBF TEMP
SQL> show user
USER 為 "SYS"
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> host move e:\sysoradata\temp01.dbf e:\sysoradata\temp01.dbfa
SQL> startup;
ORACLE 例程已經啟動。
Total System Global Area 431038464 bytes
Fixed Size 1375088 bytes
Variable Size 331351184 bytes
Database Buffers 92274688 bytes
Redo Buffers 6037504 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> select tablespace_name,status,contents,extent_management from dba_tablespaces;
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN
-------------------- --------- -------------------
SYSTEM ONLINE PERMANENT LOCAL
SYSAUX ONLINE PERMANENT LOCAL
UNDOTBS1 ONLINE UNDO LOCAL
TEMP ONLINE TEMPORARY LOCAL
USERS ONLINE PERMANENT LOCAL
BYS_UNDO ONLINE UNDO LOCAL
資料庫OPEN階段部分ALERT日誌:SMON: enabling tx recovery
Re-creating tempfileE:\SYSORADATA\TEMP01.DBF
Database Characterset is ZHS16GBK
No Resource Manager plan active
##########################################################
2.不停機維護臨時表空間
如大規模排序的SQL語句查詢時臨時檔案出問題,臨時表空間對應資料檔案出錯引起ORACLE出錯。
此時,可以為臨時表空間增加一個資料檔案,並且刪除出錯的原臨時表空間資料檔案。
SQL> selecttablespace_name,status,contents,extent_management from dba_tablespaces;
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN
-------------------- --------- -------------------
SYSTEM ONLINE PERMANENT LOCAL
SYSAUX ONLINE PERMANENT LOCAL
UNDOTBS1 ONLINE UNDO LOCAL
TEMP ONLINE TEMPORARY LOCAL
USERS ONLINE PERMANENT LOCAL
BYS_UNDO ONLINE UNDO LOCAL
SQL> alter tablespace temp add tempfile 'e:\sysoradata\temp02.dbf' size 20m;
表空間已更改。
SQL> select f.file#,t.ts#,f.name"file",t.name "tablespace" from v$tempfile f,v$tablespace t where f.ts#=t.ts#;
FILE# TS# file tablespace
---------- ----------------------------------- ------------------------------
2 3 E:\SYSORADATA\TEMP02.DBF TEMP
1 3E:\SYSORADATA\TEMP01.DBF TEMP
SQL> selecttablespace_name,status,contents,extent_management from dba_tablespaces;
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN
-------------------- --------- -------------------
SYSTEM ONLINE PERMANENT LOCAL
SYSAUX ONLINE PERMANENT LOCAL
UNDOTBS1 ONLINE UNDO LOCAL
TEMP ONLINE TEMPORARY LOCAL
USERS ONLINE PERMANENT LOCAL
BYS_UNDO ONLINE UNDO LOCAL
SQL> alter tablespace temp drop tempfile 'e:\sysoradata\temp01.dbf';
表空間已更改。
SQL> select f.file#,t.ts#,f.name"file",t.name "tablespace" from v$tempfile f,v$tablespace t where f.ts#=t.ts#;
FILE# TS# file tablespace
---------- ----------------------------------- ------------------------------
2 3E:\SYSORADATA\TEMP02.DBF TEMP
SQL> select tablespace_name,status,contents,extent_management from dba_tablespaces;
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN
-------------------- --------- -------------------
SYSTEM ONLINE PERMANENT LOCAL
SYSAUX ONLINE PERMANENT LOCAL
UNDOTBS1 ONLINE UNDO LOCAL
TEMP ONLINE TEMPORARY LOCAL
USERS ONLINE PERMANENT LOCAL
BYS_UNDO ONLINE UNDO LOCAL
SQL> col tablespace for a20
SQL> select f.file#,t.ts#,f.name"file",t.name "tablespace",bytes/1024/1024 MB from v$tempfile f,v$tablespace t wheref.ts#=t.ts#;
FILE# TS# file tablespace MB
---------- ----------------------------------- -------------------- ----------
2 3E:\SYSORADATA\TEMP02.DBF TEMP 20
相關ALERT日誌 :
alter tablespace temp add tempfile'e:\sysoradata\temp02.dbf' size 20m
Completed: alter tablespace temp addtempfile 'e:\sysoradata\temp02.dbf' size 20m
Sun Feb 10 20:16:44 2013
alter tablespace temp drop tempfile'e:\sysoradata\temp01.dbf'
WARNING: Cannot delete fileE:\SYSORADATA\TEMP01.DBF
Errors in filec:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_1716.trc:
ORA-01265: 無法刪除 TEMP FILE E:\SYSORADATA\TEMP01.DBF
ORA-27056: 無法刪除檔案
OSD-04024: 無法刪除檔案。
O/S-Error: (OS 32) 另一個程式正在使用此檔案,程式無法訪問。
Completed: alter tablespace temp drop tempfile 'e:\sysoradata\temp01.dbf'
相關文章
- 回滾段表空間資料檔案損壞解決方法
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- 移動資料檔案、系統表空間檔案、臨時表空間檔案
- UNDO 表空間檔案損壞的恢復
- 某個表空間的資料檔案損壞的修復思路
- 資料庫損壞解決:資料庫已損壞,無法分配空間資料庫
- . 資料庫臨時表空間的資料檔案的丟失資料庫
- sysaux表空間檔案損壞的處理(zt)UX
- system表空間檔案損壞----完全恢復
- 批量處理時臨時增加回滾表空間臨時表空間檔案
- MySQL 磁碟空間滿導致表空間相關資料檔案損壞故障處理MySql
- 【實驗】重建臨時表空間解決臨時表空間過大問題
- oracle 普通表空間資料檔案壞塊Oracle
- INDEX表空間檔案丟失或者損壞的恢復Index
- 【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案
- 臨時表空間過大的解決方法
- 臨時表空間已滿的解決方法
- 【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案(續)
- TEMP表空間的檔案丟失或損壞後的恢復
- Oracle rman 備份與恢復 臨時表空間的檔案問題解決Oracle
- UNDO表空間損壞的處理
- PostgreSQL資料庫toast表損壞解決SQL資料庫AST
- oracle建立臨時表空間和資料表空間以及刪除Oracle
- ORACLE 臨時表空間滿了的原因解決方案Oracle
- 解決Oracle臨時表空間佔滿的問題Oracle
- ORACLE 回滾段表空間資料檔案丟失或損壞處理方法(1) (轉)Oracle
- oracle的臨時表空間解決問題的步驟Oracle
- UNDO表空間損壞導致資料庫無法OPEN資料庫
- 臨時表空間資料刪除問題
- oracle的臨時表空間Oracle
- 臨時表空間的建立、刪除,設定預設臨時表空間
- 陣列櫃故障造成控制檔案損壞,資料檔案損壞陣列
- oracle 臨時表空間Oracle
- oracle臨時表空間Oracle
- 臨時表空間ORA-1652問題解決
- 轉:Oracle 臨時表空間過大問題解決Oracle
- Oracle 控制檔案損壞解決方案Oracle
- 關於移動臨時表空間檔案位置的問題