分析表空間空閒率並收縮表空間
點選(此處)摺疊或開啟
-
COL TBS_NAME FORMAT A15
-
COL USAGE_RATE FORMAT A10
-
SELECT Upper(F.TABLESPACE_NAME) "TBS_NAME",
-
D.TOT_GROOTTE_MB "TBS_MB",
-
D.TOT_GROOTTE_MB - F.TOTAL_BYTES "USAGE_MB",
-
To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99')
-
|| '%' "USAGE_RATE",
-
F.TOTAL_BYTES "FREE_SPACE_MB",
-
F.MAX_BYTES "MAX_BLOCK_SIZE_MB"
-
FROM (SELECT TABLESPACE_NAME,
-
Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,
-
Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES
-
FROM SYS.DBA_FREE_SPACE
-
GROUP BY TABLESPACE_NAME) F,
-
(SELECT DD.TABLESPACE_NAME,
-
Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB
-
FROM SYS.DBA_DATA_FILES DD
-
GROUP BY DD.TABLESPACE_NAME) D
-
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
- ORDER BY 4 DESC;
TBS_NAME TBS_MB USAGE_MB USAGE_RATE FREE_SPACE_MB MAX_BLOCK_SIZE_MB
--------------- ---------- ---------- ---------- ------------- -----------------
SYSTEM 740 738.19 99.76% 1.81 1.81
SYSAUX 540 512.94 94.99% 27.06 27.06
USERS 5 1.31 26.20% 3.69 3.69
UNDOTBS1 90 15.31 17.01% 74.69 53
點選(此處)摺疊或開啟
-
COL CMD FORMAT A80
-
-
select 'alter database datafile ''' || a.file_name || ''' resize ' ||
-
round(a.filesize - (a.filesize - c.hwmsize - 100) * 0.8) || 'M;' AS CMD,
-
a.filesize || 'M' as "TOTAL_SIZE",
-
c.hwmsize || 'M' as "HW"
-
from (select file_id, file_name, round(bytes / 1024 / 1024) as filesize
-
from dba_data_files) a,
-
(select file_id, round(max(block_id) * 8 / 1024) as HWMsize
-
from dba_extents
-
group by file_id) c
-
where a.file_id = c.file_id
- and a.filesize - c.hwmsize > 100;
CMD TOTAL_SIZE HW
alter database datafile '/KBACH1T/data/logdata01.dbf' resize 9427M; 30000M 4184M
HW表示實際有效利用的空間
接下來執行CMD命令即可。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22621861/viewspace-1590434/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle表空間收縮方案Oracle
- mysql收縮共享表空間MySql
- DB2_收縮表空間DB2
- 收縮表空間 for Oracle 10gOracle 10g
- 查詢表空間已使用空間和空閒空間的簡單檢視
- 【RESIZE】Oracle收縮表空間主要命令Oracle
- oracle之臨時表空間的收縮Oracle
- oracle空間收縮Oracle
- 測試表的空間壓縮與表空間的關係
- mysql共享表空間擴容,收縮,遷移MySql
- 表空間(資料檔案shrink)收縮示例
- Oracle效能優化:收縮臨時表空間Oracle優化
- MySQL 5.7新特性之線上收縮undo表空間MySql
- 收縮表空間ORA-03297錯誤解決
- MySQL InnoDB 共享表空間和獨立表空間MySql
- 管理表空間(表空間的屬性)轉貼
- 表空間管理之bigfile表空間設定
- 遷移SYSTEM表空間為本地管理表空間
- MySQL InnoDB 共享表空間和獨立表空間MySql
- 表空間中有資料也可以壓縮表空間(資料檔案)大小
- Oracle表空間Oracle
- PostgreSQL:表空間SQL
- Mysql表空間MySql
- 表空間sqlSQL
- oracle 表空間Oracle
- PostgreSQL 表空間SQL
- shrink收縮檔案空間
- Shell磁碟空間和表空間告警程式
- ORACLE 11g臨時表空間收縮的功能Oracle
- 刪除表空間和表空間包含的檔案
- 跨平臺表空間遷移(傳輸表空間)
- 將字典管理表空間轉換為本地管理表空間
- oracle 表空間,臨時表空間使用率查詢Oracle
- 基於可傳輸表空間的表空間遷移
- Oracle的邏輯結構(表空間、段、區間、塊)——表空間Oracle
- 將表從一個表空間遷移到另外一個表空間
- 如何檢視Oracle資料庫表空間大小(空閒、已使用),是否要增加表空間的資料檔案...Oracle資料庫
- oracle temp 表空間Oracle