用途
CREATE
SPFILE
を使用すると、従来のプレーンテキストの初期化パラメータ・ファイルまたは現行のシステム全体の設定から、サーバー・パラメータ・ファイルを作成できます。サーバー・パラメータ・ファイルは、サーバーのみに存在し、データベースを起動するためにクライアントからコールされるバイナリ・ファイルです。
サーバー・パラメータ・ファイルを指定すると、個々のパラメータを永続的に変更できます。サーバー・パラメータ・ファイルを使用する場合、新しいパラメータ値を永続化するALTER
SYSTEM
SET
parameter
文を指定できます。新しい値は、現行のインスタンスのみでなく、その後で起動するすべてのインスタンスにおいて適用されます。従来のプレーンテキストのパラメータ・ファイルでは、パラメータ値を永続的に変更できません。
サーバー・パラメータ・ファイルは、サーバー上に存在するため、Oracle Databaseによる自動データベースのチューニングおよびRecovery Manager(RMAN)によるバックアップが可能です。
データベースの起動時にサーバー・パラメータ・ファイルを使用するには、CREATE
SPFILE
文を使用してサーバー・パラメータ・ファイルを作成する必要があります。
Oracle Real Application Clusters環境のすべてのインスタンスは、同じサーバー・パラメータ・ファイルを使用する必要があります。ただし、別途許可されている場合は、個々のインスタンスで、1つのファイル内の同じパラメータの設定値をそれぞれ変えて使用できます。インスタンス固有のパラメータ定義は、SID.parameter = value
で指定します。SID
にはインスタンス識別子を指定します。
サーバー・パラメータ・ファイルを使用したデータベースの起動方法は、作成したサーバー・パラメータ・ファイルをデフォルトで作成したか、または非デフォルトで作成したかによって異なります。サーバー・パラメータ・ファイルの使用方法については、「サーバー・パラメータ・ファイルの作成例:」を参照してください。
関連項目:
|
前提条件
この文を実行するには、SYSDBA
システム権限またはSYSOPER
システム権限が必要です。この文は、インスタンスの起動前と起動後のいずれかで実行できます。ただし、spfile_name
を使用して、インスタンスがすでに起動済の場合は、この文で同じspfile_name
を指定できません。
セマンティクス
spfile_name
この句を指定すると、作成するサーバー・パラメータ・ファイルの名前を指定できます。
spfile_name
を指定しない場合、プラットフォーム固有のデフォルトのサーバー・パラメータ・ファイル名が使用されます。spfile_name
がサーバーにすでに存在する場合、そのファイルは上書きされます。デフォルトのサーバー・パラメータ・ファイルを使用する場合、ファイル名を参照せずにデータベースが起動されます。
spfile_name
を指定する場合、デフォルト以外のサーバー・パラメータ・ファイルを作成します。この場合、データベースを起動するときに、サーバー・パラメータ・ファイルを指す単一行の以前のパラメータ・ファイルを作成し、STARTUP
コマンドで単一行のファイルを指定する必要があります。
spfile_name
には、従来のファイル名またはOracle Automatic Storage Management (Oracle ASM)ファイル名のいずれかを指定できます。Oracle ASMファイル名の構文を使用すると、Oracle ASMディスク・グループ内にspfileを作成できます。Oracle ASMインスタンスでは、データベースを起動するための単一行の従来のパラメータ・ファイルを作成する必要はありません。
spfile_name
には、パス接頭辞を含めることができます。パス接頭辞を指定しない場合は、データベースによってデフォルトの格納場所(プラットフォームによって異なる)のパス接頭辞が追加されます。
関連項目:
|
pfile_name
サーバー・パラメータ・ファイルを作成する元になる従来のプレーンテキストの初期化パラメータ・ファイル名を指定します。従来のパラメータ・ファイルは、サーバー上にある必要があります。
pfile_name
を指定して、従来のパラメータ・ファイルがオペレーティング・システムのパラメータ・ファイルのデフォルト・ディレクトリに存在しない場合は、フルパス名を指定する必要があります。
pfile_name
を指定しない場合、オペレーティング・システムのパラメータ・ファイルのデフォルト・ディレクトリからデフォルトのパラメータ・ファイル名が検索され、使用されます。そのディレクトリにファイルが存在しない場合、エラーが戻されます。
注意: Oracle Real Application Clusters環境では、この文でパラメータ・ファイル名を指定してサーバー・パラメータ・ファイルを作成する前に、まず、すべてのインスタンスのパラメータ・ファイルを1つのファイルに結合する必要があります。この手順の実行の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。 |
MEMORY
を指定すると、現行のシステム全体のパラメータ設定を使用してspfileを作成できます。Oracle RAC環境では、作成されたファイルには各インスタンスからのパラメータ設定が含まれます。
例
サーバー・パラメータ・ファイルの作成例: 次の例は、従来のプレーンテキストのパラメータ・ファイルt_init1.ora
からデフォルトのサーバー・パラメータ・ファイルを作成します。
CREATE SPFILE FROM PFILE = '$ORACLE_HOME/work/t_init1.ora';
注意: 通常、オペレーティング・システムのパラメータ・ファイルには、フルパスのファイル名を指定する必要があります。 |
デフォルトのサーバー・パラメータ・ファイルを作成する場合、その後のデータベースの起動は、次のようにPFILE
パラメータなしでSQL*PlusのコマンドSTARTUP
を実行し、サーバー・パラメータ・ファイルを使用します。
STARTUP
次の例は、従来のプレーンテキストのパラメータ・ファイルt_init1.ora
からデフォルト以外のサーバー・パラメータ・ファイルs_params.ora
を作成します。
CREATE SPFILE = 's_params.ora' FROM PFILE = '$ORACLE_HOME/work/t_init1.ora';
デフォルト以外のサーバー・パラメータ・ファイルを作成する場合、次の単一行を含む以前のパラメータ・ファイルを最初に作成し、その後でデータベースを起動します。
spfile = 's_params.ora'
このパラメータ・ファイル名は、ご使用のオペレーティング・システムのネーミング規則に従う必要があります。その後、STARTUP
コマンドで単一行のパラメータ・ファイルを使用します。次の例では、単一行のパラメータ・ファイルの名前がnew_param.ora
であるとした場合のデータベースの起動方法を示します。
STARTUP PFILE=new_param.ora