oracleでユーザーテーブルスペースの使用状況を確認する方法は何ですか?

Oracleユーザーテーブルスペースの使用状況を確認するために、次のSQLクエリ文を使用できます。

SELECT tablespace_name,
       sum(bytes) / 1024 / 1024 "Total Size (MB)",
       sum(bytes - blocks * block_size) / 1024 / 1024 "Used Size (MB)",
       sum(blocks * block_size) / 1024 / 1024 "Free Size (MB)",
       round((1 - sum(bytes - blocks * block_size) / sum(bytes)) * 100, 2) "Used Percentage"
FROM dba_data_files
GROUP BY tablespace_name;

このクエリは、ユーザー表領域の名前、合計サイズ、使用済みサイズ、利用可能サイズ、使用率を返します。

DBA_DATA_FILESビューをクエリするためには適切な権限が必要です。DBA_DATA_FILESビューにアクセス権がない場合は、USER_TABLESPACESビューを使用してユーザー表領域の使用状況を調べることができます。

SELECT tablespace_name,
       round(sum(bytes) / 1024 / 1024) "Total Size (MB)",
       round(sum(bytes - blocks * block_size) / 1024 / 1024) "Used Size (MB)",
       round(sum(blocks * block_size) / 1024 / 1024) "Free Size (MB)",
       round((1 - sum(bytes - blocks * block_size) / sum(bytes)) * 100, 2) "Used Percentage"
FROM user_segments
GROUP BY tablespace_name;

このクエリは、ユーザーの表領域の名前、全体のサイズ、使用済みのサイズ、利用可能なサイズ、および使用率を返します。

上記のクエリは、ユーザ表領域の使用状況を調査するためにのみ適用されます。他の表領域(例:システム表領域や一時表領域)の使用状況を調べたい場合は、クエリ内のビュー名を適切に変更する必要があります。

bannerAds