獲取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ù)估算大小(基于統(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-01Oracle顯示游標(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