獲取Oracle表大小的三種方法
直接查詢段大小
表的存儲(chǔ)空間信息存儲(chǔ)在段(Segment)中,通過(guò)以下 SQL 可以獲取表的大小(包含數(shù)據(jù)、索引、LOB 等占用的空間)
SELECT
segment_name AS table_name,
bytes,
ROUND(bytes / 1024 / 1024, 2) AS size_mb
FROM
user_segments -- 根據(jù)權(quán)限替換為 dba_segments 或 all_segments
WHERE
segment_type = 'TABLE'
AND segment_name = 'AI_TOOLS';

確保表名使用大寫,因?yàn)?Oracle 數(shù)據(jù)字典默認(rèn)存儲(chǔ)大寫對(duì)象名。
bytes字段表示分配的存儲(chǔ)空間,可能包含未使用的塊。若表有分區(qū),需查詢
DBA_TAB_PARTITIONS視圖獲取各分區(qū)大小。
計(jì)算表數(shù)據(jù)估算大?。ɑ诮y(tǒng)計(jì)信息)
結(jié)合 DBA_TABLES 中的行數(shù)和平均行長(zhǎng)估算數(shù)據(jù)量(需更新統(tǒng)計(jì)信息):
BEGIN
DBMS_STATS.GATHER_TABLE_STATS(
ownname => 'NEW_USER',
tabname => 'AI_TOOLS'
);
END;
/
SELECT
table_name,
num_rows,
avg_row_len,
ROUND((num_rows * avg_row_len) / 1024 / 1024, 2) AS estimated_size_mb
FROM
user_tables
WHERE
table_name = 'AI_TOOLS';
匯總表及索引的總大小
SELECT
'TABLE' AS segment_type,
segment_name,
bytes AS table_size_bytes,
ROUND(bytes / 1024 / 1024, 2) AS table_size_mb
FROM
user_segments
WHERE
segment_type = 'TABLE'
AND segment_name = 'YOUR_TABLE_NAME'
UNION ALL
SELECT
'INDEX' AS segment_type,
segment_name,
bytes AS index_size_bytes,
ROUND(bytes / 1024 / 1024, 2) AS index_size_mb
FROM
user_segments
WHERE
segment_type = 'INDEX'
AND segment_name IN (
SELECT index_name
FROM user_indexes
WHERE table_name = 'YOUR_TABLE_NAME'
);到此這篇關(guān)于獲取Oracle表大小的三種方法的文章就介紹到這了,更多相關(guān)獲取Oracle表大小內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Oracle?VM?VirtualBox?虛擬機(jī)硬盤擴(kuò)容
這篇文章主要介紹了Oracle?VM?VirtualBox?虛擬機(jī)硬盤擴(kuò)容,VirtualBox中使用Ubuntu虛擬機(jī)中,出現(xiàn)了虛擬硬盤不夠用的情況,我們可以采取下文方式進(jìn)行擴(kuò)容,需要的朋友可以參考一下2022-03-03
解決ORA-12154 TNS無(wú)法解析指定的連接標(biāo)識(shí)符問(wèn)題
Oracle11g server 64bit服務(wù)器端安裝在Windows Server2008 Enterprise上,安裝Oracle11g client 32bit,通過(guò)SQL Plus以sysdba身份連接數(shù)據(jù)庫(kù),并且創(chuàng)建表空間、用戶、授權(quán)成功,在連接數(shù)據(jù)庫(kù)時(shí)出現(xiàn)問(wèn)題,下面講解ORA-12154無(wú)法解析指定的連接標(biāo)識(shí)符問(wèn)題,感興趣的朋友一起看看2024-01-01
Oracle顯示游標(biāo)的使用及游標(biāo)for循環(huán)
本篇文章給大家介紹oracle顯示游標(biāo)的使用及游標(biāo)for循環(huán),當(dāng)查詢返回單行記錄時(shí)使用隱式游標(biāo),查詢返回多行記錄并逐行進(jìn)行處理時(shí)使用顯式游標(biāo),對(duì)本文感興趣的朋友一起學(xué)習(xí)吧2015-11-11

