Oracle和DB2都支持分區表,但是我們得知道什麼樣的表適合使用分區表技術,Oracle的官方建議是超過2G的Table就要使用分區表。
下面來總結一下,各DB中如何獲得這些大小信息:
Oracle 10G中:
查詢出當前用戶的表所占用的空間大小,並按大小進行降序排列:
Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name order by Sum(bytes)/1024/1024 desc
查詢出系統表空間的大小,並按大小進行降序排列(需要SYSDBA的權限):
Select Tablespace_Name,Sum(bytes)/1024/1024 From Dba_Segments Group By Tablespace_Name order by Sum(bytes)/1024/1024 desc
這個在OEMC中也可以看,但是如果沒有裝的話,SQL語句還是比較方便的。
DB2中:
查看某個Table的大小可以在控制中心中用圖形界面查看。
對應的SQL語句是什麼?誰能告訴我一下?
SQL Server中:
執行統計並查看指定表名的表大小:
exec sp_spaceused '表名', true;