• ベストアンサー

SQL

現在、使用しているDBの情報を取得したいのですが?  (1)表領域のサイズ、空き容量  (2)それにぶら下がっているデータファイル  (3)表領域毎のオブジェクト 要はGUIの管理画面で、  表領域→データファイル  表領域→ユーザー→オブジェクト をSQL文で管理したいのですが? 初心者ですみません。

質問者が選んだベストアンサー

  • ベストアンサー
  • investyou
  • ベストアンサー率23% (13/56)
回答No.2

(1)表領域のサイズ、空き容量 select t.tablespace_name tablespace_name, total_bytes / 1024 tablespace_kbytes, (total_bytes - free_bytes) / 1024 used_kbytes, free_bytes / 1024 free_kbytes, to_char(((total_bytes - free_bytes) / (total_bytes)) * 100, '990.99') || '%' capacity from (select tablespace_name, sum(bytes) total_bytes from dba_data_files group by tablespace_name) t, (select tablespace_name, sum(bytes) free_bytes from dba_free_space group by tablespace_name) f where t.tablespace_name = f.tablespace_name order by t.tablespace_name; (2)それにぶら下がっているデータファイル select df.file_name, df.tablespace_name, bytes / 1024 file_kbytes, (bytes - free_bytes) / 1024 used_kbytes, free_bytes / 1024 free_kbytes, to_char(((bytes - free_bytes) / (bytes)) * 100, '990.99') || '%' capacity from dba_data_files df, (select file_id, sum(bytes) free_bytes from dba_free_space group by file_id) f where df.file_id = f.file_id order by tablespace_name, file_name (3)表領域毎のオブジェクト select * from all_tables をカスタマイズ。

その他の回答 (1)

  • wmitsu
  • ベストアンサー率26% (4/15)
回答No.1

このあたりを調べましょう 表領域の情報 DBA_TABLESPACES データ・ファイルの情報 DBA_DATA_FILES セグメントの情報 DBA_SEGMENTS エクステントの情報 DBA_EXTENTS 空きエクステントの情報 DBA_FREE_SPACE

関連するQ&A