【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案(續)
在文章《【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案》(http://space.itpub.net/519536/viewspace-662833)中介紹了包含一個臨時檔案的臨時表空間的SHRINK方法,如果臨時表空間包含多個臨時檔案,效果會是什麼樣子呢?
1.系統當前臨時表空間的臨時檔案資訊
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 10.9921875
2.在此基礎上為臨時表空間temp增加兩個臨時檔案
sys@11gR2> alter tablespace temp add tempfile '/oracle/ora11gR2/oradata/secooler/temp02.dbf' size 20m;
Tablespace altered.
sys@11gR2> alter tablespace temp add tempfile '/oracle/ora11gR2/oradata/secooler/temp03.dbf' size 20m;
Tablespace altered.
3.此時臨時表空間temp包含三個臨時檔案
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 10.9921875
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 20
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 20
4.使用預設的臨時表空間收縮方法
sys@11gR2> alter tablespace temp shrink space;
Tablespace altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 1.9921875
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 1.9921875
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 1.9921875
可見,每個臨時檔案都被縮小到了不到2M的大小。
5.調整每個臨時檔案大小到200M
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp01.dbf' resize 200m;
Database altered.
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp02.dbf' resize 200m;
Database altered.
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp03.dbf' resize 200m;
Database altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 200
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 200
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 200
6.我們使用包含keep子句的shrink命令收縮臨時表空間
sys@11gR2> alter tablespace temp shrink space keep 100m;
Tablespace altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 97.015625
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 1.9921875
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 1.9921875
從結果上可以看出,Oracle將逐一的將臨時表空間中包含的臨時檔案進行收縮,直到臨時檔案大小總和為100M為止(注意,不是“平均收縮”)。
7.小結
在本例中,只是簡單展示了一下使用包含keep語句的收縮臨時表空間的效果。在生產環境中,建議使用指定具體臨時檔案進行收縮的方法完成臨時表空間的收縮。
Good luck.
secooler
10.05.16
-- The End --
1.系統當前臨時表空間的臨時檔案資訊
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 10.9921875
2.在此基礎上為臨時表空間temp增加兩個臨時檔案
sys@11gR2> alter tablespace temp add tempfile '/oracle/ora11gR2/oradata/secooler/temp02.dbf' size 20m;
Tablespace altered.
sys@11gR2> alter tablespace temp add tempfile '/oracle/ora11gR2/oradata/secooler/temp03.dbf' size 20m;
Tablespace altered.
3.此時臨時表空間temp包含三個臨時檔案
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 10.9921875
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 20
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 20
4.使用預設的臨時表空間收縮方法
sys@11gR2> alter tablespace temp shrink space;
Tablespace altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 1.9921875
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 1.9921875
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 1.9921875
可見,每個臨時檔案都被縮小到了不到2M的大小。
5.調整每個臨時檔案大小到200M
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp01.dbf' resize 200m;
Database altered.
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp02.dbf' resize 200m;
Database altered.
sys@11gR2> alter database tempfile '/oracle/ora11gR2/oradata/secooler/temp03.dbf' resize 200m;
Database altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 200
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 200
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 200
6.我們使用包含keep子句的shrink命令收縮臨時表空間
sys@11gR2> alter tablespace temp shrink space keep 100m;
Tablespace altered.
sys@11gR2> select file#,name,bytes/1024/1024 MB from v$tempfile;
FILE# NAME MB
---------- -------------------------------------------- ----------
1 /oracle/ora11gR2/oradata/secooler/temp01.dbf 97.015625
2 /oracle/ora11gR2/oradata/secooler/temp02.dbf 1.9921875
3 /oracle/ora11gR2/oradata/secooler/temp03.dbf 1.9921875
從結果上可以看出,Oracle將逐一的將臨時表空間中包含的臨時檔案進行收縮,直到臨時檔案大小總和為100M為止(注意,不是“平均收縮”)。
7.小結
在本例中,只是簡單展示了一下使用包含keep語句的收縮臨時表空間的效果。在生產環境中,建議使用指定具體臨時檔案進行收縮的方法完成臨時表空間的收縮。
Good luck.
secooler
10.05.16
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/519536/viewspace-662835/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【臨時表空間】11g中使用 SHRINK方法縮小臨時表空間和臨時檔案
- Oracle臨時表空間檢視、新增臨時表空間資料檔案、修改預設臨時表空間 方法!Oracle
- 批量處理時臨時增加回滾表空間臨時表空間檔案
- oracle 臨時表空間Oracle
- oracle臨時表空間Oracle
- 【儲存管理】建立臨時表空間組、建立臨時表空間組及使用
- 臨時表空間的建立、刪除,設定預設臨時表空間
- Oracle 臨時表空間概念Oracle
- oracle臨時表空間組Oracle
- oracle的臨時表空間Oracle
- Oracle Temp 臨時表空間Oracle
- mysql臨時表,臨時表空間,ibtmp1表空間暴增原因初探MySql
- 【臨時表空間組】臨時表空間組的建立、維護及應用
- 【實驗】重建臨時表空間解決臨時表空間過大問題
- oracle之臨時表空間的收縮Oracle
- ORACLE 11g臨時表空間收縮的功能Oracle
- oracle清理和重建臨時表空間Oracle
- oracle 表空間,臨時表空間使用率查詢Oracle
- oracle 11g線上收回臨預設臨時表空間Oracle
- oracle臨時表空間相關Oracle
- MySQL InnoDB臨時表空間配置MySql
- Oracle TEMP臨時表空間概念Oracle
- Oracle 臨時表空間的概念Oracle
- 臨時表空間操作總結
- ORACLE臨時表空間總結Oracle
- oracle 重建臨時表空間 tempfileOracle
- 刪掉Oracle臨時表空間Oracle
- ORACLE臨時表空間的清理Oracle
- 臨時表空間和回滾表空間使用率查詢
- Oracle效能優化:收縮臨時表空間Oracle優化
- 臨時表空間的空間使用情況查詢
- MySQL 5.7 新特性 共享臨時表空間及臨時表改進MySql
- 移動資料檔案、系統表空間檔案、臨時表空間檔案
- Oracle 11g 新特性 -- 臨時表空間收縮(轉)(Oracle
- Oracle修改預設表空間和預設臨時表空間Oracle
- Oracle 11g中Temp臨時表空間、檔案的新特性Oracle
- oracle11g 查詢臨時表空間的使用率和正在使用臨時表空間的使用者Oracle
- Oracle Temp臨時表空間處理Oracle