Oracle10gR2刪除誤新增的空檔案
-- 2009-2-25 13:53
-- Oracle10gR2刪除誤新增的空檔案
1.資料庫版本Oracle10gR2:
sys@ora10g> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod
PL/SQL Release 10.2.0.4.0 - Production
CORE 10.2.0.4.0 Production
TNS for Linux: Version 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production
2.向SEC_D表空間增加一個資料檔案:
sys@ora10g> alter tablespace sec_d add datafile size 10m;
Tablespace altered.
sys@ora10g> col name for a70
sys@ora10g> select file#,name from v$datafile;
FILE# NAME
---------- --------------------------------------------------
1 /oracle/u02/oradata/ORA10G/datafile/o1_mf_system_4srpl575_.dbf
2 /oracle/u02/oradata/ORA10G/datafile/o1_mf_undotbs1_4srpnd5t_.dbf
3 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sysaux_4srpnv4f_.dbf
4 /oracle/u02/oradata/ORA10G/datafile/o1_mf_users_4srpp39q_.dbf
5 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf
6 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf
6 rows selected.
3.確認表空間檔案資訊:
sys@ora10g> col FILE_NAME for a75
sys@ora10g> select file_id,file_name from dba_data_files where tablespace_name='SEC_D';
FILE_ID FILE_NAME
---------- --------------------------------------------
5 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf
6 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf
4.確認表空間未被儲存佔用:
sys@ora10g> select segment_name,file_id,blocks from dba_extents where file_id=6;
no rows selected
5.刪除表空間中的空資料檔案:
sys@ora10g> alter tablespace sec_d drop datafile '/oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf';
Tablespace altered.
6.檢查資料字典,這個空檔案的資訊已經被徹底清除了:
sys@ora10g> select file_name,file_id from dba_data_files where tablespace_name='SEC_D';
FILE_NAME FILE_ID
--------------------------------------------- ----------
/oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf 5
7.總結
1).10gR2可以將錯誤新增的空檔案刪除掉
2).不可以刪除表空間的第一個資料檔案
3).非空的資料庫檔案不可以刪除,會在嘗試刪除的過程中報錯
-- Oracle10gR2刪除誤新增的空檔案
1.資料庫版本Oracle10gR2:
sys@ora10g> select * from v$version;
BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod
PL/SQL Release 10.2.0.4.0 - Production
CORE 10.2.0.4.0 Production
TNS for Linux: Version 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production
2.向SEC_D表空間增加一個資料檔案:
sys@ora10g> alter tablespace sec_d add datafile size 10m;
Tablespace altered.
sys@ora10g> col name for a70
sys@ora10g> select file#,name from v$datafile;
FILE# NAME
---------- --------------------------------------------------
1 /oracle/u02/oradata/ORA10G/datafile/o1_mf_system_4srpl575_.dbf
2 /oracle/u02/oradata/ORA10G/datafile/o1_mf_undotbs1_4srpnd5t_.dbf
3 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sysaux_4srpnv4f_.dbf
4 /oracle/u02/oradata/ORA10G/datafile/o1_mf_users_4srpp39q_.dbf
5 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf
6 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf
6 rows selected.
3.確認表空間檔案資訊:
sys@ora10g> col FILE_NAME for a75
sys@ora10g> select file_id,file_name from dba_data_files where tablespace_name='SEC_D';
FILE_ID FILE_NAME
---------- --------------------------------------------
5 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf
6 /oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf
4.確認表空間未被儲存佔用:
sys@ora10g> select segment_name,file_id,blocks from dba_extents where file_id=6;
no rows selected
5.刪除表空間中的空資料檔案:
sys@ora10g> alter tablespace sec_d drop datafile '/oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4tcgwz30_.dbf';
Tablespace altered.
6.檢查資料字典,這個空檔案的資訊已經被徹底清除了:
sys@ora10g> select file_name,file_id from dba_data_files where tablespace_name='SEC_D';
FILE_NAME FILE_ID
--------------------------------------------- ----------
/oracle/u02/oradata/ORA10G/datafile/o1_mf_sec_d_4t3s818c_.dbf 5
7.總結
1).10gR2可以將錯誤新增的空檔案刪除掉
2).不可以刪除表空間的第一個資料檔案
3).非空的資料庫檔案不可以刪除,會在嘗試刪除的過程中報錯
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-557728/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle誤刪除表空間的資料檔案Oracle
- 新增、刪除日誌檔案
- 刪除空資料檔案
- Linux下批量刪除空檔案或者刪除指定大小的檔案Linux
- oracle 失誤刪掉資料檔案後,刪除表空間操作Oracle
- Oracle系統表空間剛新增的一個資料檔案誤刪除恢復處理Oracle
- 刪除表空間和表空間包含的檔案
- 使用lsof恢復誤刪除的檔案
- 錯誤新增表空間的資料檔案
- lsof恢復oracle誤刪除檔案Oracle
- 10G刪除空資料檔案
- Oracle恢復誤刪除的資料檔案Oracle
- ZT:使用lsof恢復誤刪除的檔案
- UNDO表空間下的資料檔案被誤刪除後的處理方法
- 檔案的刪除
- RM刪除檔案空間釋放詳解
- Linux檔案刪除空間未釋放Linux
- hpux刪除檔案後空間不釋放UX
- 誤刪oracle資料庫表空間檔案Oracle資料庫
- 誤刪除資料檔案、控制檔案的非RMAN恢復方法
- 使用檔案描述符恢復誤刪除的資料檔案
- 如何正確的刪除表空間資料檔案
- 刪除檔案
- Oracle 11g 表空間的誤刪除, 當前的控制檔案不識別該表空間Oracle
- 資料檔案誤刪除(DM_單機)
- Linux 刪除檔案後空間不釋放Linux
- linux下恢復誤刪除的資料檔案Linux
- 歸檔模式下的表空間檔案無法用命令刪除模式
- 監控空間並自動刪除超出空間的最老的檔案
- flashback database 恢復誤刪除的表空間。Database
- 刪除正在使用的檔案,空間不釋放的問題
- SVN !檔案刪除
- rm 刪除檔案
- 批次刪除檔案
- Git——刪除檔案Git
- 非歸檔資料檔案誤刪除解決辦法
- u盤裡的檔案無法刪除 如何刪除u盤裡刪不掉的檔案
- 被誤刪的檔案正確處理方法,快速找回誤刪的檔案