0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

初期化パラメータ・ファイルの使用順序を確認する(Oracle Database 19c)

Last updated at Posted at 2023-03-26

初期化パラメーター・ファイル

 Oracle Database には400以上の初期化パラメーター(隠しパラメーターを除く)が定義されています。これらは初期化パラメーター・ファイルに記述され、インスタンス起動時に利用されます。ALTER SYSTEM 文で動的に変更されたパラメーターは SPFILE に永続化されることもあります。
 初期化パラメーター・ファイルの保存場所には以下の3種類が考えられます。

テキスト形式(PFILE)

 PFILE は {ORACLE_HOME}/dbs/init{ORACLE_SID}.ora ファイルとして作成されます。
テキストエディタで修正するか、CREATE PFILE 文で SPFILE ファイルから生成します。
INCLUDE 句を使って SPFILE の場所を示すこともできます。

$ cat initO19A.ora
*.control_files=('+DATA','+MGMT')
*.db_name='O19A'
*.db_unique_name='O19S'
*.sga_target=10G

バイナリ形式(サーバー・パラメータ・ファイル=SPFILE)

 SPFILE はバイナリファイルの形式で {ORACLE_HOME}/dbs/spfile{ORACLE_SID}.ora ファイルとして作成します。CREATE SPFILE 文で PFILE から作成します。

Oracle Grid Infrastructure の属性(SPFILE)

 データベースが Oracle Grid Infrastructure 配下にある場合、SPFILE の場所は Oracle Grid Infrastructure のデータベース属性として定義されます。CREATE SPFILE 文で ASM 領域等の任意の場所にファイルを作成できます。下記は SPFILE を ASM ディスクグループ +DATA に保存したことを示しています。Oracle Database 起動時は ASM に保存された初期化パラメーター・ファイルを使用します。

$ srvctl config database -db o19s
Database unique name: o19s
Database name: o19a
Oracle home: /u01/app/oracle/product/19.0.0/dbhome_1
Oracle user: oracle
Spfile: +DATA/O19S/PARAMETERFILE/spfile.477.1132410857 ← ここ
Password file:
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools:
Disk Groups: DATA,MGMT
Mount point paths:
Services: o19s
Type: RAC
Start concurrency:
Stop concurrency:
OSDBA group: dba
OSOPER group: oper
Database instances: o19s1,o19s2
Configured nodes: rel87-1,rel87-2
CSS critical: no
CPU count: 0
Memory target: 0
Maximum memory: 0
Default network number for database services:
Database is administrator managed

使用される順序

{ORACLE_HOME}/dbs ディレクトリに PFILE と SPFILE を配置し、かつ Oracle Grid Infrastructure の属性として ASM ディスクグループにも置いた状態でインスタンスを起動します。

$ cd $ORACLE_HOME/dbs
$ ls -l inito19s1.ora spfileo19s1.ora
-rw-r--r-- 1 oracle oinstall  756 Mar 26 10:59 inito19s1.ora
-rw-r----- 1 oracle asmadmin 2560 Mar 26 10:59 spfileo19s1.ora
$ srvctl config database -db o19s | grep Spfile 
Spfile: +DATA/O19S/PARAMETERFILE/spfile.477.1132410857
$ srvctl start database -db o19s
$ sqlplus / as sysdba
SQL> SHOW PARAMETER SPFILE;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
spfile                               string      +DATA/O19S/PARAMETERFILE/spfil
                                                 e.477.1132410857

Oracle Grid Infrastructure に保存されたファイルが使われていることがわかります。上記のように 1: Grid Infrastructure管理の SPFILE, 2: SPFILE, 3: PFILE の順で優先順位が高いことがわかります。

あとがき

検証としては上記の通りになったのですが、Grid Infrastructure と PFILE のみの環境で PFILE が使われてしまった事例がありました。あまりないと思いますが PFILE を使った環境では確認が必要かもしれません。

Author: Noriyoshi Shinoda / Date: March 26, 2023

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?