Oracle ASMインスタンスの管理

Oracle ASMは、通常、Oracle Databaseホームとは別のOracle Grid Infrastructureホームにインストールされます。標準的な構成のサーバーでは、Oracle ASMインスタンスが1つのみサポートされますが、Oracle Flex ASMでは、追加の構成オプションが提供されます。

Oracle ASMインスタンスを管理する場合、管理アクティビティをOracle Grid Infrastructureホームで実行する必要があります。

この項では、Oracle ASMインスタンスを管理する方法について説明します。内容は次のとおりです。

関連項目:

スタンドアロン・サーバー用のOracle Grid Infrastructureの使用

スタンドアロン・サーバー(Oracle Restart)用のOracle Grid Infrastructureにより、Oracle Databaseの可用性は向上します。

スタンドアロン・サーバー用のOracle Grid Infrastructureをインストールすると、Oracle ASMとOracle Restartの両方が組み込まれます。スタンドアロン・サーバー(Oracle Restart)用のOracle Grid Infrastructureは、Oracle Databaseホームとは別にインストールするOracle Grid Infrastructureホームから実行されます。

Oracle Restartでは、単一インスタンスの(クラスタ化されていない)Oracle Database、Oracle ASMインスタンス、サービス、リスナー、およびサーバー上で実行されているその他のプロセスの起動および再起動が管理されます。ハードウェア障害またはソフトウェア障害後にサービスの割込みが発生すると、Oracle Restartは自動的にコンポーネントを再起動するために必要な処置を取ります。

サーバー制御ユーティリティ(SRVCTL)を使用すると、Oracle ASMインスタンスなどのコンポーネントをOracle Restartに追加できます。次に、Oracle ASMインスタンスに対してOracle Restart保護を有効にします。SRVCTLを使用して、Oracle Restart保護の削除または無効化も行います。

関連項目:

Oracle ASMインスタンスの起動について

この項では、Oracle ASMインスタンスを管理する方法について説明します。内容は次のとおりです。

Oracle ASMインスタンスへの接続およびOracle ASMインスタンスの起動

Oracle ASMインスタンスはOracle Databaseインスタンスと同様の方法(相違点はわずかです)で起動します。

SQL*PlusによるOracle ASMインスタンスの起動時には、次の点に注意してください。

  • SQL*PlusでローカルOracle ASMインスタンスに接続するには、ORACLE_SID環境変数をOracle ASMシステム識別子(SID)に設定します。

    単一インスタンス・データベース用のデフォルトOracle ASM SIDは+ASM、Oracle RACノード用のデフォルトOracle ASM SIDは+ASMnode_numberです。node_numberはノードの番号です。ORACLE_HOME環境変数は、Oracle ASMがインストールされているグリッド・インフラストラクチャ・ホームに設定する必要があります。

    注意:

    デフォルトのOracle ASM SID名を変更しないことをお薦めします。

  • 初期化パラメータ・ファイルには、次のエントリが含まれている必要があります。

    INSTANCE_TYPE = ASM

    このパラメータは、データベース・インスタンスではなくOracle ASMインスタンスが起動中であることを示します。

  • データベースをマウントしてオープンするかわりにSTARTUPコマンドを実行すると、Oracle ASMディスク・グループのマウントが試みられます。

    Oracle ASMインスタンスが起動したら、ALTER DISKGROUP...MOUNTコマンドを使用してディスク・グループをマウントできます。

  • 関連するOracle ASMインスタンスを起動するときに、関連するOracle Databaseインスタンスが動作している必要はありません。

Oracle ASMによってSQL*Plus STARTUPコマンド・パラメータがどのように解釈されるのかを次に示します。

  • FORCEパラメータ

    再起動する前にSHUTDOWN ABORTをOracle ASMインスタンスに発行します。

    Oracle Automatic Storage Managementクラスタ・ファイルシステム(Oracle ACFS)ファイルシステムがOracle ADVMボリュームに現在マウントされている場合は、そのファイルシステムを先にディスマウントする必要があります。そうしないと、アプリケーションでI/Oエラーが発生し、Oracle ASMストレージの隔離前にOracle ACFSのユーザー・データおよびメタデータがストレージに書き込まれない可能性があります。

  • MOUNTまたはOPENパラメータ

    ASM_DISKGROUPS初期化パラメータで指定されたディスク・グループをマウントします。コマンド・パラメータが指定されていない場合は、これがデフォルトになります。

  • NOMOUNTパラメータ

    ディスク・グループをマウントせずにOracle ASMインスタンスを起動します。

  • RESTRICTパラメータ

    制限モードでインスタンスを起動します。制限モードでは、CREATE SESSIONRESTRICTED SESSIONの両方のシステム権限を持つユーザーに対してのみアクセスが許可されます。RESTRICT句は、MOUNTNOMOUNTおよびOPEN句と組み合せて使用できます。

    制限モードでは、データベース・インスタンスはディスク・グループを使用できません。つまり、データベースはそのディスク・グループに含まれるファイルを開くことができません。また、クラスタの他のインスタンスによってディスク・グループをマウントすることもできません。制限モードでディスク・グループをマウントする場合、そのディスク・グループをマウントできるOracle ASMインスタンスは1つのみです。このモードは、構成の問題を修復するためにディスク・グループをマウントする際に役立ちます。

Oracle ASMインスタンスを起動する場合のSQL*Plusセッションの例を次に示します。

SQLPLUS /NOLOG
SQL> CONNECT SYS AS SYSASM
Enter password: sys_password
Connected to an idle instance.

SQL> STARTUP
ASM instance started

Total System Global Area   71303168 bytes
Fixed Size                 1069292 bytes
Variable Size              45068052 bytes
ASM Cache                  25165824 bytes
ASM disk groups mounted

関連項目:

SPFILEパスが不正な場合のOracle ASMインスタンスの起動

GPnPプロファイルのSPFILEパスが不正な場合は、次のようにしてOracle ASMインスタンスを起動します。

  1. SPFILEへのパスを特定する1行のPFILEを作成します。

    次に例を示します。

    次を含む/oracle/dbs/spfileasm_init.oraファイルを作成します。

    SPFILE='+DATA/asm/asmparameterfile/asmspfile.ora'

  2. 初期化パラメータ・ファイルを使用してインスタンスを起動します。

    次に例を示します。

    SQL> STARTUP PFILE=/oracle/dbs/spfileasm_init.ora

  3. インスタンスの実行後、ASMCMD spsetコマンドを使用してGPnPプロファイルのSPFILEパスを更新します。spsetを参照してください。

    次に例を示します。

    ASMCMD> spset +DATA/asm/asmparameterfile/asmspfile.ora

関連項目:

非デフォルトのサーバー・パラメータ・ファイルでのSTARTUPの使用の詳細は、『Oracle Database管理者ガイド』を参照してください。

起動時のディスク・グループのマウントについて

起動時に、Oracle ASMインスタンスは次のディスク・グループをマウントしようとします。

  • ASM_DISKGROUPS初期化パラメータで指定されたディスク・グループ

  • クラスタ同期化サービス(CSS)で投票ファイルに使用されるディスク・グループ

  • Oracle ClusterwareでOracle Cluster Registry(OCR)に使用されるディスク・グループ

  • Oracle ASMインスタンスでASMサーバー・パラメータ・ファイル(SPFILE)の格納に使用されるディスク・グループ

このリストのディスク・グループが検出できない場合、起動時にOracle ASMインスタンスはディスク・グループを一切マウントしません。Oracle ASMインスタンスが起動したら、ALTER DISKGROUP...MOUNTコマンドを使用してディスク・グループをマウントできます。詳細は、ディスク・グループのマウントおよびディスマウントを参照してください。

制限モードについて

メンテナンスの実行中は、STARTUP RESTRICTコマンドを使用してOracle ASMインスタンスへのアクセスを制御できます。Oracle ASMインスタンスがこのモードでアクティブの場合、ASM_DISKGROUPSパラメータで定義されるすべてのディスク・グループはRESTRICTEDモードでマウントされます。これにより、データベースはOracle ASMインスタンスに接続できません。また、ALTER SYSTEM文の制限句はOracle ASMインスタンスに対して無効です。ALTER DISKGROUP diskgroup MOUNT文を拡張すると、Oracle ASMは制限モードでディスク・グループをマウントできます。

RESTRICTEDモードでディスク・グループをマウントする場合、ディスク・グループをマウントできるのは1つのインスタンスのみです。そのノード上のOracle ASMのクライアントは、ディスク・グループがRESTRICTEDモードでマウントされている間はそのディスク・グループにアクセスできません。RESTRICTEDモードを使用すると、クライアントから干渉されずにOracle ASMインスタンスのディスク・グループに対してメンテナンス・タスクを実行できます。

ディスク・グループがRESTRICTEDモードの場合に行われるリバランス操作により、Oracle RAC環境のOracle ASMインスタンス間で発生する、エクステント・マップのメッセージ機能のロックおよびロック解除がなくなります。そのため、リバランス全体のスループットが向上します。メンテナンス期間の最後に、ディスク・グループを明示的にディスマウントして、標準モードでリマウントする必要があります。

Oracle ASMインスタンスの停止について

SQL*PlusでSHUTDOWNコマンドを実行して、Oracle ASM停止プロセスを開始できます。

このコマンドを実行する前に、Oracle ASMインスタンスに接続できるようにORACLE_SID環境変数がOracle ASM SIDに設定されていることを確認してください。単一インスタンス・データベース用のデフォルトOracle ASM SIDは+ASM、Oracle RACノード用のデフォルトOracle ASM SIDは+ASMnode_numberです。node_numberはノードの番号です。ORACLE_HOME環境変数は、Oracle ASMがインストールされているグリッド・インフラストラクチャ・ホームに設定する必要があります。

Oracle Flex ASMを使用していない場合、Oracle ASMインスタンスの停止を試みる前に、Oracle ASMインスタンスを使用するデータベース・インスタンスをすべて停止し、Oracle ASM動的ボリューム・マネージャ(Oracle ADVM)ボリュームにマウントされているファイルシステムをすべてディスマウントすることを強くお薦めします。Oracle Flex ASMを使用している場合、Oracle ASMインスタンスを停止すると、Oracle Flex ASMクライアントは実行中の他のOracle ASMインスタンスに移動します。

Oracle Cluster Registry(OCR)または投票ファイルがディスク・グループに格納されている場合、ディスク・グループは、ノードのクラスタウェアの停止の一部としてOracle ASMインスタンスの停止によってのみディスマウントできます。クラスタウェアを停止するには、crsctl stop crsを実行します。

Oracle ASMインスタンスを停止するには、次の手順を実行します。

SQLPLUS /NOLOG
SQL> CONNECT SYS AS SYSASM
Enter password: sys_password
Connected.
SQL> SHUTDOWN NORMAL

SHUTDOWNモードと、各モードにおけるOracle ASMインスタンスの動作を次に示します。

  • NORMAL

    Oracle ASMは、進行中のSQLが完了するのを待ってから、すべてのディスク・グループを順番にディスマウントし、Oracle ASMインスタンスを停止します。インスタンスを停止する前に、Oracle ASMは現在接続しているすべてのユーザーがインスタンスから切断するのを待ちます。Oracle ASMインスタンスに接続されているデータベース・インスタンスがある場合は、SHUTDOWNコマンドからエラーが返され、Oracle ASMインスタンスは動作した状態のままになります。NORMALはデフォルトの停止モードです。

  • IMMEDIATEまたはTRANSACTIONAL

    Oracle ASMは、進行中のSQLが完了するのを待ってから、すべてのディスク・グループを順番にディスマウントし、Oracle ASMインスタンスを停止します。Oracle ASMは、インスタンスに現在接続しているユーザーが切断するのを待ちません。Oracle ASMインスタンスに接続されているデータベース・インスタンスがある場合は、SHUTDOWNコマンドからエラーが返され、Oracle ASMインスタンスは動作した状態のままになります。Oracle ASMインスタンスにはトランザクションが含まれないため、TRANSACTIONALモードの動作はIMMEDIATEモードと同じになります。

  • ABORT

    ディスク・グループを順番にディスマウントすることなくOracle ASMインスタンスがすぐに停止します。これにより、次回のOracle ASM起動時にはリカバリが行われます。

    Oracle ASMインスタンスに接続されているデータベース・インスタンスがある場合は、そのデータベース・インスタンスは中断されます。

    Oracle Automatic Storage Managementクラスタ・ファイルシステム(Oracle ACFS)ファイルシステムがOracle ADVMボリュームに現在マウントされている場合は、そのファイルシステムを先にディスマウントする必要があります。そうしないと、アプリケーションでI/Oエラーが発生し、Oracle ASMストレージの隔離前にOracle ACFSのユーザー・データおよびメタデータがストレージに書き込まれない可能性があります。

関連項目:

サーバー制御ユーティリティによるOracle ASMインスタンスの管理について

この項で説明するOracle ASMの管理手順の他に、Oracle ASMクラスタ環境でサーバー制御ユーティリティ(SRVCTL)を使用して、次のOracle ASM管理タスクを実行できます。

  • Oracle Cluster Registry (OCR)でのOracle ASMのOracle Clusterware (CRS)リソースの追加および削除

  • Oracle ASMインスタンスの有効化、無効化、起動および停止

  • Oracle ASMインスタンスの構成とステータスの表示

関連項目:

SRVCTLによるOracle ASMインスタンスの管理の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

アウトオブプレース・アップグレードについて

アウトオブプレース・アップグレードでは、インストーラはOracle Grid Infrastructureの新しいバージョンを別のOracle Grid Infrastructureホームにインストールします。

Oracle Grid Infrastructure 11gリリース2 (11.2)のインプレース・アップグレードはサポートされません。たとえば、Oracle Grid Infrastructure 11gリリース2 (11.2.0.1)をOracle Grid Infrastructure 11gリリース2 (11.2.0.2)にアップグレードする場合は、アウトオブプレース・アップグレードにする必要があります。

関連項目:

Oracle Grid Infrastructureのインストールとアウトオブプレース・アップグレードおよびOracle Grid InfrastructureとOracle ASMのローリング・アップグレードの実行の詳細は、『Oracle Grid Infrastructureインストレーションおよびアップグレード・ガイド』

構成ウィザードによるOracle Grid Infrastructureの構成について

Oracle Grid Infrastructure構成ウィザードにより、Oracle Grid Infrastructure環境の構成を、ソフトウェアのインストール後に変更することができます。構成ウィザードは、ユーザーの入力を受け入れて検証し、構成データをCRSCONFIG_PARAMSファイルに移入します。追加のスクリプトを実行する必要がある場合は、構成ウィザードにより、該当するスクリプトの実行がユーザーに指示されます。

関連項目:

Oracle Grid Infrastructure構成ウィザードの詳細は、『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。

Oracle ASM用のアクティブ・セッション履歴サンプリングについて

アクティブ・セッション履歴サンプリングは、Oracle ASMインスタンスで使用できるようになりました。このアクティビティは、V$ACTIVE_SESSION_HISTORY動的ビューで公開されます。アクティブ・セッション履歴サンプリングには、Oracle ASMインスタンス用の診断パック・ライセンスが必要です。

関連項目:

WindowsでのOracleホーム・ユーザーについて

Oracle Databaseでは、Oracleホーム・ユーザーの使用がサポートされ、これはインストール時に指定できます。Oracleホーム・ユーザーは、Oracleホームに関連付けられ、インストール後には変更できません。システム上の異なるOracleホームは、同じOracleホーム・ユーザーの共有や、異なるOracleホーム・ユーザー名の使用が可能です。

Windowsオペレーティング・システム用の以前のリリースでは、Oracleサービスは、完全な権限を保有するLocal System権限として実行する必要がありました。この機能によって、データベース、リスナーおよびジョブ・スケジューラのサービスを、低く非管理のユーザー権限で実行できるようにして、セキュリティの制御を厳密にすることを許可します。Oracleホーム・ユーザーには、組込みアカウントまたはWindowsユーザー・アカウントを指定できます。Oracle DatabaseサービスにOracle製品の実行に必要な権限のみが付与されていることを確認し、制限された権限のセットがOracleホーム・ユーザーに付与されるように、Windowsユーザー・アカウントは、権限の低い(非管理)アカウントにする必要があります。通常、Windowsユーザー・アカウントは、ローカル・ユーザー、ドメイン・ユーザーまたは管理対象サービス・アカウントになります。ただし、クラスタ全体のアイデンティティが必要なため、Oracle RAC、Oracle RestartおよびOracle Grid Infrastructureのインストールには、Oracleホーム・ユーザーとしてドメイン・ユーザーを使用する必要があります。

関連項目:

WindowsプラットフォームでのOracleサービスの実行およびWindowsユーザー・アカウントの様々なタイプの詳細は、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。