Oracle-12c
如何使用 ASM 增加 Oracle 12C RAC 中臨時表空間的大小?
我有一個由兩個節點 (OL6) 和 ASM 組成的 Oracle 12c RAC。我用它來學習。出於某種原因,我想增加它的臨時表空間大小。現在大約50M。我已經考慮過使用
SELECT * FROM dba_temp_free_space;
命令。我想把它增加到2048M。我知道,如何在通常的配置中增加它:
ALTER DATABASE TEMPFILE '/u02/oradata/my_sid/temp01.dbf' RESIZE 2048M;
知道臨時表空間文件的路徑。
我試圖獲取有關數據庫文件的資訊,以查看是否有一些文件名稱中包含“temp”一詞:
select * from dba_data_files;
但我只有下一個文件的名稱:
+DATA/ORCL/DATAFILE/system.287.970304491 +DATA/ORCL/DATAFILE/sysaux.288.970304523 +DATA/ORCL/DATAFILE/users.290.970304549 +DATA/ORCL/DATAFILE/undotbs1.289.970304547 +DATA/ORCL/DATAFILE/undotbs2.295.970304621
那麼,如何獲取
tempXX.dbf
文件的正確路徑並調整其大小呢?
我使用命令創建了一個新的臨時文件:
ALTER TABLESPACE temp ADD TEMPFILE '+DATA/ORCL/DATAFILE/temp02.dbf' SIZE 2048M REUSE;
在該
SELECT * FROM dba_temp_free_space;
命令向我顯示更多可用空間之後。但是我不知道舊臨時文件的位置以及它的名稱是什麼。我找到了舊的臨時文件名並調整了它的大小:
SQL> SELECT * FROM dba_temp_files; SQL> ALTER DATABASE TEMPFILE '+DATA/ORCL/TEMPFILE/temp.XYZ.XXXXXXXXX' RESIZE 500M;
該
dba_temp_files
視圖將顯示數據庫中的任何臨時表空間。column name format a55 column info format a65 select t.TABLESPACE_NAME,t.FILE_NAME, to_char(t.BYTES,'999,999,999,999')||' Bytes, '||t.STATUS||' '||d.STATUS||' '|| d.CONTENTS Info from dba_temp_files t, dba_tablespaces d where t.TABLESPACE_NAME = d.TABLESPACE_NAME ;
然後,您可以“離線”表空間(如果您有另一個臨時線上)並刪除它並刪除數據文件。