Oracleデータベースの V$PARAMETER は、現在のセッションにおいて有効な初期化パラメータを示す動的パフォーマンス・ビューです。
V$PARAMETERは、セッションに現在有効になっている初期化パラメータの情報を示す。新規セッションは、V$SYSTEM_PARAMETERビューに表示されるインスタンス全体の値からパラメータ値を継承する。
| 列 | データ型 | 説明 |
|---|---|---|
| NUM | NUMBER | パラメータ番号 |
| NAME | VARCHAR2(80) | パラメータ名 |
| TYPE | NUMBER | パラメータ・タイプ |
| VALUE | VARCHAR2(4000) | セッションのパラメータ値 |
| DISPLAY_VALUE | VARCHAR2(4000) | わかりやすいフォーマットのパラメータ値 |
| ISDEFAULT | VARCHAR2(9) | パラメータがデフォルト値に設定されるかどうか |
| ISSES_MODIFIABLE | VARCHAR2(5) | パラメータをALTER SESSIONで変更できるかどうか |
| ISSYS_MODIFIABLE | VARCHAR2(9) | パラメータをALTER SYSTEMで変更できるかどうか |
| ISINSTANCE_MODIFIABLE | VARCHAR2(5) | ALTER SYSTEMで変更できるパラメータに対して、インスタンスごとに異なる値を使用できるか |
| ISMODIFIED | VARCHAR2(10) | パラメータがインスタンスの起動後に変更されたかどうか |
| ISADJUSTED | VARCHAR2(5) | 適切な値になるように、Oracleが入力値を調整したかどうか |
| ISDEPRECATED | VARCHAR2(5) | パラメータが非推奨であるかどうか |
| ISBASIC | VARCHAR2(5) | パラメータが基本パラメータかどうか |
| DESCRIPTION | VARCHAR2(255) | パラメータの説明 |
| UPDATE_COMMENT | VARCHAR2(255) | 最新の更新に対応付けられたコメント |
| HASH | NUMBER | パラメータ名のハッシュ値 |
パラメータ・タイプ
| 値 | 説明 |
|---|---|
| 1 | ブール |
| 2 | 文字列 |
| 3 | 整数 |
| 4 | パラメータ・ファイル |
| 5 | 予約済 |
| 6 | 大整数 |
V$PARAMETER2は、セッションに対して現在有効な初期化パラメータの情報を示し、各リストのパラメータ値をビューの行として表示する。
| 列 | データ型 | 説明 |
|---|---|---|
| NUM | NUMBER | パラメータ番号 |
| NAME | VARCHAR2(80) | パラメータ名 |
| TYPE | NUMBER | パラメータ・タイプ |
| VALUE | VARCHAR2(4000) | セッションのパラメータ値 |
| DISPLAY_VALUE | VARCHAR2(4000) | わかりやすいフォーマットのパラメータ値 |
| ISDEFAULT | VARCHAR2(9) | パラメータがデフォルト値に設定されるかどうか |
| ISSES_MODIFIABLE | VARCHAR2(5) | パラメータをALTER SESSIONで変更できるかどうか |
| ISSYS_MODIFIABLE | VARCHAR2(9) | パラメータをALTER SYSTEMで変更できるかどうか |
| ISINSTANCE_MODIFIABLE | VARCHAR2(5) | ALTER SYSTEMで変更できるパラメータに対して、インスタンスごとに異なる値を使用できるか |
| ISMODIFIED | VARCHAR2(10) | パラメータがインスタンスの起動後に変更されたかどうか |
| ISADJUSTED | VARCHAR2(5) | 適切な値になるように、Oracleが入力値を調整したかどうか |
| ISDEPRECATED | VARCHAR2(5) | パラメータが非推奨であるかどうか |
| ISBASIC | VARCHAR2(5) | パラメータが基本パラメータかどうか |
| DESCRIPTION | VARCHAR2(255) | パラメータの説明 |
| ORDINAL | NUMBER | パラメータ値の位置 |
| UPDATE_COMMENT | VARCHAR2(255) | 最新の更新に対応付けられたコメント |
パラメータは複数の値を持つことがある。V$PARAMETER がひとつのパラメータにつき1行なのに対して、V$PARAMETER2 はひとつの値に対して1行のデータが存在する。
SQL> SELECT name, value FROM V$PARAMETER WHERE name = 'control_files';
NAME VALUE
------------- ------------------------------------------------------------------------------------
control_files /u01/app/oracle/oradata/ora/control01.ctl, /u01/app/oracle/oradata/ora/control02.ctl
SQL> SELECT name, value FROM V$PARAMETER2 WHERE name = 'control_files';
NAME VALUE
------------- -----------------------------------------
control_files /u01/app/oracle/oradata/ora/control01.ctl
control_files /u01/app/oracle/oradata/ora/control02.ctl
V$PARAMETER ではパラメータ名 (NAME) が重複することはないが、V$PARAMETER2 ではパラメータ名が重複する。