熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle10gR2如何刪除誤添加的空文件

2013-11-13 22:12:49  來源: Oracle 

  今天又有朋友問到當向一個表空間錯誤的添加了一個數據文件如何來將這個文件刪除?

  如果是在Oracleg之前刪除一個表空間中的數據文件後其文件在數據庫數據字典中會仍然存在除非你刪除表空間否則文件信息不會清除

  但是從OraclegR開始Oracle允許我們徹底刪除一個空文件不留痕跡

  但是注意如果你向SYSTEM表空間錯誤的添加了一個文件那麼就讓它在哪裡好了不要動

  對於普通表空間則可以參考以下步驟處理

  數據庫版本OraclegR




SQL> select * from v$version;

BANNER

Oracle Database g Enterprise Edition Release Prod
PL/SQL Release Production
CORE          Production
TNS for Linux: Version Production
NLSRTL Version Production

  向USERS表空間增加一個數據文件




SQL> alter tablespace users add datafile /opt/oracle/oradata/eygle/usersdbf size M;

Tablespace altered

SQL> select file#name from v$datafile;

    FILE# NAME

        /opt/oracle/oradata/eygle/systemdbf
        /opt/oracle/oradata/eygle/undotbsdbf
        /opt/oracle/oradata/eygle/sysauxdbf
        /opt/oracle/oradata/eygle/usersdbf
        /opt/oracle/oradata/eygle/usersdbf

rows selected

  確認表空間文件信息




SQL> select file_namefile_id from dba_data_files where tablespace_name=USERS;

FILE_NAME                                            FILE_ID

/opt/oracle/oradata/eygle/usersdbf                     
/opt/oracle/oradata/eygle/usersdbf                     

  確認表空間未被存儲占用




SQL> select segment_namefile_idblocks from dba_extents where file_id=;

no rows selected

  刪除表空間中的空數據文件




SQL> alter tablespace users drop datafile /opt/oracle/oradata/eygle/usersdbf;

Tablespace altered

  檢查數據字典這個空文件的信息已經被徹底清除了




SQL> select file_namefile_id from dba_data_files where tablespace_name=USERS;

FILE_NAME                                            FILE_ID

/opt/oracle/oradata/eygle/usersdbf                     
From:http://tw.wingwit.com/Article/program/Oracle/201311/18494.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.