データディクショナリビューと動的パフォーマンスビュー

データベースOracle

記事内に広告が含まれています。

データディクショナリビューについて

データディクショナリビューは、データディクショナリと呼ばれるOracle内部の管理情報を格納する特殊な表を基にして作られたビューです。
読みやすい形式でOracle内部の管理情報を参照できます。
→SELECT文で参照できます。
以下、主なデータディクショナリビューです。

ビュー名 確認できる情報 関連ビュー
DBA_TABLES 表の情報 ALL_TABLES,USER_TABLES
DBA_INDEXES 索引の情報 ALL_INDEXES,USR_INDEXES
DBA_VIEWS ビューの情報 ALL_VIEWS,USER_VIEWS
DBA_SEQUENCES シーケンスの情報 ALL_SEQUENCES,USER_SEQUENCES
DBA_SYNONYMS シノニムの情報 ALL_SYNONYMS,USER_SYNONYMS
DBA_CONSTRAINTS 制約の情報 ALL_CONSTRAINTS,USER_CONSTRAINTS
DBA_USERS ユーザーの情報
DBA_TABLESPACES 表領域の情報
DBA_DATA_FILES データファイルの情報
DBA_FREE_SPACE データファイルの空き情報に関する情報

データディクショナリビューは、表示対象となる管理情報の範囲に応じて以下の3つに分類されます。
①DBA_:データベース全体の管理情報が表示される。権限を持つユーザーのみがアクセス可能です。
②ALL_:問合せを実行したユーザーがアクセスできる範囲の管理情報が表示されます。
③USER_:問合せを実行したユーザーが所有する範囲の管理情報が表示されます。

 

動的パフォーマンスビューについて

動的パフォーマンスビューは、制御ファイルに格納された内部管理情報、またはインスタンス(SGA)で保管している内部管理情報を確認するためのビューです。
ビュー名は「V$」から始まります。
→SELECT文で参照できます。
以下、主な動的パフォーマンスビューです。

ビュー名 確認できる内部管理情報
V$PARAMETER 初期化パラメータの設定値
V$SGA SGAのサマリー情報
V$SGAINFO SGAのサイズ情報(様々なSGAコンポーネントのサイズなど)
V$SESSION インスタンス内の全セッションの情報
V$DATAFILE 制御ファイルに格納されたデータファイルの情報
V$TEMPFILE 制御ファイルに格納された一時ファイルの情報
V$INSTANCE インスタンスの情報
V$SQL 共有プールにキャッシュされているSQLの情報
V$SYSSTAT インスタンスの様々な稼働統計情報
V$SESSTAT セッションの様々な稼働統計情報

 

データディクショナリビューと動的パフォーマンスビューの比較

データディクショナリビューと動的パフォーマンスビューは、Oracle内部の管理情報をSQLを用いてアクセス可能という点で類似していますが、異なる点もあります。
データディクショナリビューと動的パフォーマンスビューの比較は以下の表のとおりです。

データディクショナリビュー 動的パフォーマンスビュー
ビュー名 DBA_ or ALL or USER_から始まる V$から始まる
元になるデータの格納先 データディクショナリ 制御ファイル or インスタンス(SGA)
データの読み取り一貫性 保証される 保証されない
ビューを参照可能な起動状態 OPEN状態のみ OPEN状態以外からでも参照可能

今回は、データディクショナリビューと動的パフォーマンスビューについて説明しました。

参考文献…オラクルマスター教科書 Silver DBA Oracle Database Administration I 第3章

システムトラストでは一緒に働いていただける仲間を募集中です。
株式会社システムトラスト

システムトラストでは、システムエンジニア、プログラマーなどを随時募集中です。気軽にご相談ください。

お問合せ