簡體   English   中英

如何在oracle 10g服務器中清理temp表空間,請提供Linux平台的步驟

[英]how to cleanup the temp tablespace in oracle 10g server , Please provide the steps for linux plateform

我想清理包含數據文件temp01.dbftemp02.dbfTemp表空間,所以請建議我刪除temp01.dbf文件還是刪除temp表空間。 Temp表空間的數據文件如下所示

33G     temp01.dbf
1.5G    temp02.dbf
  1. 創建臨時表空間臨時

      CREATE TEMPORARY TABLESPACE TEMP2 TEMPFILE '/u01/app/oradata/temp01.dbf′ SIZE 2000M ; 
  2. 移動默認數據庫臨時表空間

      ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp2; 
  3. 確保沒有會話正在使用您的Old Temp表空間

      a. Find Session Number from V$SORT_USAGE: SELECT USERNAME, SESSION_NUM, SESSION_ADDR FROM V$SORT_USAGE; b. Find Session ID from V$SESSION: If the resultset contains any rows then your next step will be to find the SID from the V$SESSION view. You can find session id by using SESSION_NUM or SESSION_ADDR from previous resultset. SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE SERIAL#=SESSION_NUM; OR SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE SADDR=SESSION_ADDR; c. Kill Session: Now kill the session with IMMEDIATE. ALTER SYSTEM KILL 'SID,SERIAL#' IMMEDIATE; 
  4. 刪除臨時表空間

      DROP TABLESPACE temp INCLUDING CONTENTS AND DATAFILES; 
  5. 重新創建表空間臨時

      CREATE TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/app/temp/temp01.dbf′ SIZE 2000M; 

6將表空間臨時移回新的臨時表空間

       ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp;
  1. 臨時刪除表空間溫度

      DROP TABLESPACE temp2 INCLUDING CONTENTS AND DATAFILES; 

謝謝@anudeepks! 只是想指出一點,在第5步中,句子應如下所示:

 CREATE TEMPORARY TABLESPACE TEMP TEMPFILE '/u01/app/temp/temp.dbf′ SIZE 2000M;

(請注意,文件名已從temp01.dbf更改為temp.dbf)。 否則,我們將收到錯誤消息,因為該文件已存在,並且該文件還將在步驟7中刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM