您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關數據庫中如何實現查詢表空間使用情況的腳本,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
腳本如下:
Select Distinct a.Tablespace_Name ,
Trunc(((Free_Space) / Total_Space) * 100) || '%' ,
To_Char(Free_Space / 1024 / 1024 / 1024, '9999999990.99') || 'G' Free_Space ,
To_Char(Total_Space / 1024 / 1024 / 1024, '9999999990.99') || 'G' Total_Space,
c.autoextensible,
c.maxbytes/1024/1024/1024||'G' maxbytes,
(c.increment_by*8192) / 1024/1024||'M'
From (Select Tablespace_Name, Sum(Bytes) Free_Space
From Dba_Free_Space
Group By Tablespace_Name) a,
(Select Tablespace_Name, Sum(Bytes) Total_Space
From Dba_Data_Files
Group By Tablespace_Name) b,
dba_data_files c
Where a.Tablespace_Name = b.Tablespace_Name and a.tablespace_name = c.Tablespace_Name and c.tablespace_name = b.Tablespace_Name
order by 2 ;
解釋如下:
Tablespace_Name ---表空間的名字。
Trunc(((Free_Space) / Total_Space) * 100) || '%' ---表空間的空閑率,這比例越小,說明數據的剩余的空間越大,這比例越大,說明數據的剩余的空間越小。
To_Char(Free_Space / 1024 / 1024 / 1024, '9999999990.99') || 'G' Free_Space ---表空間剩余的多少空間。大小為G,大家可以根據自己的實際情況調整。可以To_Char(Free_Space / 1024 / 1024 , '9999999990.99') || 'M' Free_Space,計算出來的結果是按M來算的。
To_Char(Total_Space / 1024 / 1024 / 1024, '9999999990.99') || 'G' Total_Space ---表空間總的大小。大小為G,大家可以根據自己的實際情況調整。
c.autoextensible, ----數據文件是否開啟自動增長。yes表示是開啟,ON表示未開啟。
c.maxbytes/1024/1024/1024||'G' maxbytes, ---數據文件最大能增大到多少。單位為G,說的直白點,就是這個數據文件增長到這個數值以后就不在自動增長了。一般情況下,一個數據文件最大為32g,生產環境中一般是添加數據文件,一個數據文件為30G,不開自動增長。
(c.increment_by*8192) / 1024/1024||'M' ---數據文件開啟自動增長后,每次增加多少,大小為M。
查詢某個表空間的具體信息
select FILE_NAME,TABLESPACE_NAME,BYTES/1024/1024/1024||'G',AUTOEXTENSIBLE,MAXBYTES/1024/1024/1024||'G' from dba_data_files where TABLESPACE_NAME='表空間名字';
關于“數據庫中如何實現查詢表空間使用情況的腳本”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。