プライマリ・コンテンツに移動
Oracle® Grid Infrastructureインストレーション・ガイド
12cリリース1 (12.1) for HP-UX Itanium
E52983-07
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

9 Oracle Grid Infrastructureを変更または削除する方法

この章では、Oracle ClusterwareとOracle ASMの削除方法について説明します。

Oracle Database 11gリリース2(11.2)以降では、削除ツールを使用して、Oracle Database、Oracle Clusterware、Oracle ASM、Oracle RACまたはOracle Databaseクライアントのインストールに関連付けられているOracleホーム全体を削除することをお薦めします。個々の製品またはコンポーネントの削除はサポートされていません。

この章の内容は次のとおりです。


関連項目:

個々の製品を削除する場合は、要件および制限について製品固有のドキュメントを参照してください。

9.1 Oracle Clusterwareを削除するタイミングの決定

次のような場合に、インストールされたコンポーネントを削除します。

  • 学習環境またはテスト環境のいずれかで、Oracle Clusterwareを正常にインストールした後、Oracle Clusterwareインストールを削除する必要がある場合。

  • Oracle Clusterwareのインストールまたはアップグレード中、またはその後にエラーが発生し、インストールを再試行する場合。

  • ハードウェア障害またはオペレーティング・システム障害のため、インストールまたはアップグレードが停止した場合。

  • Oracle Clusterwareを再インストールするようにOracleサポート・サービスからアドバイスされた場合。

9.2 クラスタへのスタンドアロン・グリッド・インフラストラクチャ・サーバーの移行

Oracle Restart(スタンドアロン・サーバー用のOracle Grid Infrastructureインストール)を使用するOracle Databaseインストールがあり、そのサーバーをクラスタ・メンバー・ノードとして構成する場合は、次の作業を行います。


関連項目:

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

  1. 次の構文でsrvctlを使用してOracle Restartの構成を調べます(ここで、db_unique_nameはデータベースの一意の名前で、lsnrnameはリスナー名です)。

    srvctl config database -db db_unique_name

    srvctl config service -db db_unique_name

    srvctl config listener -listener lsnrname

    サーバーの構成情報を書き留めます。

  2. rootとしてログインし、Grid home/crs/installディレクトリに移動します。次に例を示します。

    # cd /u01/app/12.1.0/grid/crs/install
    
  3. 手順1で調べたすべてのデータベース、サービスおよびリスナーを停止します。

  4. 次のコマンドを使用して、スタンドアロン・サーバー(Oracle Restart)に対するOracle Grid Infrastructureインストールの構成を解除します。

    # roothas.sh -deconfig -force
    
  5. このマニュアルの説明に従って、Oracle Clusterware構成のためにサーバーを準備します。また、クラスタ用Oracle Grid InfrastructureをOracle Restartと同じ場所にインストールするか、別の場所にインストールするかを選択します。

    Oracle Restartと同じ場所にインストールする場合

    1. 削除ツールを使用してOracle Restartソフトウェアを削除しますが、すべてのディスク・グループはそのまま保持します。

    2. 手順6に進みます。

    Oracle Restartと異なる場所にインストールする場合

    1. クラスタ用Oracle Grid Infrastructureを新しいGridホーム・ソフトウェアの場所にインストールします。

  6. Oracle Grid Infrastructureインストール所有者として、Oracle Clusterware構成ウィザードを実行し、レスポンス・ファイルを保存してステージングします。次に例を示します。

    $ Grid_home/crs/config/config.sh -silent -responseFile $HOME/GI.rsp
    
  7. Oracle Clusterware構成ウィザードでroot.shを実行します。

  8. Oracle Restartディスク・グループをマウントします。

  9. volenableコマンドを実行し、すべてのOracle Restartディスク・グループ・ボリュームを有効にします。

  10. 手順1で記録した情報を使用して、Oracle ClusterwareサービスをOracle Clusterwareホームに戻します。次に例を示します。

    /u01/app/grid/product/11.2.0/grid/bin/srvctl add filesystem -device
    /dev/asm/db1  -diskgroup ORestartData -volume db1 -mountpointpath
    /u01/app/grid/product/11.2.0/db1 -user grid
    
  11. 手順1で記録した構成情報を使用して、クラスタ用Oracle Grid InfrastructureでサポートされるようにOracle Databaseを追加します。次のコマンド構文を使用します(db_unique_nameはノード上のデータベースの一意の名前、nodenameはノードの名前)。

    srvctl add database -db db_unique_name -oraclehome $ORACLE_HOME -node nodename

    たとえば、最初にORACLE_HOME環境変数にデータベース・ホーム・ディレクトリの場所が設定されていることを確認します。

    次に、データベース名mydb、サービスmyserviceを追加する場合は、次のコマンドを入力します。

    srvctl add database -db mydb -oraclehome $ORACLE_HOME -node node1
    
  12. srvctl add serviceコマンドを使用して、各サービスをデータベースに追加します。次に例を示します。

    srvctl add service -db mydb -service myservice
    

9.3 クラスタ用Oracle Grid Infrastructureのバイナリの再リンク

クラスタ用Oracle Grid Infrastructure(クラスタ用に構成されたOracle ClusterwareとOracle ASM)をインストールした後、バイナリを変更する必要がある場合は、次の手順を実行します。Grid_homeはクラスタ用Oracle Grid Infrastructureホームです。


注意:

実行可能ファイルを再リンクする前に、Oracleホーム・ディレクトリで実行されている、再リンク対象の実行可能ファイルをすべて停止する必要があります。また、Oracle共有ライブラリにリンクされているアプリケーションも停止してください。

rootで次のコマンドを実行します。

# cd Grid_home/crs/install
# perl rootcrs.sh -unlock

クラスタ用Oracle Grid Infrastructure所有者で次のコマンドを実行します。

$ export ORACLE_HOME=Grid_home
$ Grid_home/bin/relink

再度rootで次のコマンドを入力します。

# cd Grid_home/rdbms/install/
# ./rootadd_rdbms.sh
# cd Grid_home/crs/install
# perl rootcrs.sh -patch

オペレーティング・システムのパッチを適用したときやオペレーティング・システムのアップグレードをした後は毎回、Oracle ClusterwareとOracle ASMのバイナリを再リンクする必要があります。

以前のリリースからアップグレードする場合に、以前のリリースのGridホームを削除するには、まず以前のリリースのGridホームをロック解除する必要があります。以前のリリースのホームからコマンドrootcrs.sh -unlockを実行し、以前のリリースのGridホームをロック解除します。スクリプトが完了したら、削除ツールを実行できます。

9.4 Oracle Grid Infrastructureホーム・パスの変更

クラスタ用Oracle Grid Infrastructure(クラスタ用に構成されているOracle ClusterwareおよびOracle ASM)をインストールした後、Gridホームのパスを変更する必要がある場合は、次の例に従って、既存のGridホームでデタッチして、新しいGridホームをアタッチします。


注意:

Gridホームを変更する前に、再リンクしているGridホーム・ディレクトリで実行されるすべての実行可能ファイルを停止する必要があります。また、Oracle共有ライブラリにリンクされているアプリケーションも停止してください。

  1. Oracle Grid Infrastructureインストール所有者(grid)としてログインします。

  2. ディレクトリをGrid_home/binに移動し、コマンドcrsctl stop crsを入力します。次に例を示します。

    $ cd /u01/app/12.1.0/grid/bin
    $ ./crsctl stop crs
    
  3. 次のコマンドを実行し、既存のGridホームをデタッチします。/u01/app/12.1.0/gridは既存のGridホームの場所です。

    $ /u01/app/12.1.0/grid/oui/bin/runInstaller -silent -waitforcompletion\
    -detachHome ORACLE_HOME='/u01/app/12.1.0/grid' -local
    
  4. rootとして、古いGridホームの場所から新しいGridホームの場所にグリッド・バイナリを移動します。たとえば、古いGridホームが/u01/app/12.1.0/gridで、新しいGridホームが/u01/app/12c/の場合は次のようにします。

    # mkdir /u01/app/12c
    # mv /u01/app/12.1.0/grid /u01/app/12c
    
  5. 『Oracle Clusterware管理およびデプロイメント・ガイド』の説明に従ってOracle Grid Infrastructureインストールをクローニングします。

    Grid home/clone/binディレクトリに移動してclone.plスクリプトを実行するときに、新しいGridホームにパス情報を提供する入力パラメータに値を指定します。

  6. 再度rootで次のコマンドを入力し、新しいホームの場所で起動します。

    # cd /u01/app/12c/crs/install
    # perl rootcrs.sh -patch -dstcrshome /u01/app/12c/
    
  7. 各クラスタ・メンバー・ノードで、手順1から4を繰り返します。

Gridホームを移動するたびに、Oracle ClusterwareとOracle ASMのバイナリを再リンクする必要があります。

9.5 バイナリを削除せずに行うOracle Clusterwareの構成解除

rootcrs.shコマンドにフラグ-deconfig -forceを指定して実行すると、インストール済のバイナリを削除しなくても、1つ以上のノードでOracle Clusterwareを構成解除できます。この機能は、あるノードでオペレーティング・システム・パッケージの欠落など、インストール時にroot.shコマンドを実行する際、1つ以上のクラスタ・ノードでエラーが発生した場合に役立ちます。インストール・エラーが発生するノードでrootcrs.sh -deconfig -forceを実行することによって、それらのノードでOracle Clusterwareを構成解除し、エラーの原因を修正した後、再度root.shを実行できます。


注意:

Oracle Clusterwareを構成解除する前に、インストールおよび実行されている可能性のあるデータベース、サービスおよびリスナーを停止してください。


注意:

この項で使用するコマンドでは、クラスタ全体のOracle Grid Infrastructureインストールが削除されます。個々のノードからインストールを削除する場合は、『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。

Oracle Clusterwareの構成を解除するには、次の手順を実行します。

  1. エラーが発生したノードでrootユーザーとしてログインします。

  2. Grid_home/crs/installディレクトリに移動します。次に例を示します。

    # cd /u01/app/12.1.0/grid/crs/install
     
    
  3. -deconfigおよび-forceフラグを指定してrootcrs.shを実行します。次に例を示します。

    # perl rootcrs.sh -deconfig -force
    

    必要に応じて他のノードで繰り返します。

  4. クラスタ内のすべてのノードでOracle Clusterwareを構成解除する場合は、最後のノードで次のコマンドを入力します。

    # perl rootcrs.sh -deconfig -force -lastnode
    

    -lastnodeフラグを指定すると、OCRおよび投票ディスクを含む、クラスタの構成解除が完了します。


    注意:

    ハブ・ノードでrootcrs.sh -deconfig -force -lastnodeコマンドを実行します。-lastnodeフラグでコマンドを実行する前に、すべてのリーフ・ノードの構成を解除します。

9.6 Oracle ClusterwareとASMの削除

deinstallコマンドによって、Oracle ClusterwareおよびOracle ASMをサーバーから削除できます。次の項では、このコマンドと、それを使用するための追加オプションについて説明します。


注意:

Oracleソフトウェアを削除するには、同じリリースの削除ツールを使用する必要があります。以前のリリースのOracleソフトウェアを削除するとき、それより新しいリリースの削除ツールは使用しないでください。たとえば、既存の11.2.0.4OracleホームにあるOracleソフトウェアを削除するとき、12.1.0.1のインストール・メディアに収録されている削除ツールは実行しないでください。

9.6.1 削除ツールについて

Oracle Database 12cから、削除ツールはデータベース・インストール・メディアに統合されています。Oracle Database、Oracle DatabaseクライアントまたはOracle Grid Infrastructureインストール・メディアのベース・ディレクトリから、runInstallerコマンドに-deinstallオプションと-homeオプションを使用して削除ツールを実行できます。

削除ツールは、インストール後のOracleホーム・ディレクトリにある別のコマンド(deinstall)でも実行できます。削除ツールの場所は、$ORACLE_HOME/deinstallディレクトリです。

削除ツールのコマンドでは、指定した情報と、ソフトウェア・ホームから収集した情報を使用して、レスポンス・ファイルを作成します。このファイルのかわりに、以前のdeinstallコマンドで生成されたレスポンス・ファイルを指定するには、–checkonlyオプションを使用するか、レスポンス・ファイル・テンプレートを編集します。

削除ツールによって、Oracleソフトウェアが停止され、特定のOracleホームのOracleソフトウェアおよびオペレーティング・システムの構成ファイルが削除されます。削除ツールを実行してOracle Grid Infrastructureを削除する場合、rootユーザーとしてrootcrs.shスクリプトを実行してOracle Grid Infrastructureを構成解除するか、またはroothas.shスクリプトを実行してスタンドアロン・サーバー用のOracle Grid Infrastructureを構成解除します。


注意:

Oracle Database 12c リリース1 (12.1.0.2)以上では、Oracle Grid Infrastructureホームのroothas.plスクリプトはroothas.shスクリプトに置き換わりました。

Oracleホームのソフトウェアが実行されていない場合(インストール失敗の後など)、削除ツールは構成を確認できないため、対話的に、またはレスポンス・ファイルですべての構成の詳細を提供する必要があります。


注意:

削除ツールを実行すると、構成解除して削除するホーム以外に、中央インベントリ(oraInventory)に他の登録済ホームが含まれていない場合、削除ツールはOracle Databaseインストール所有者のOracleベース・ディレクトリで次のファイルおよびディレクトリの内容を削除します。
  • admin

  • cfgtoollogs

  • checkpoints

  • diag

  • oradata

  • flash_recovery_area

Optimal Flexible Architecture(OFA)構成を使用してインストールを構成し、Oracleソフトウェアが排他的に使用するために、OracleベースとOracleホーム・パスを予約しておくことをお薦めします。Oracleソフトウェアを所有するユーザー・アカウントによって所有されるOracleベース内のこれらの場所に、ユーザーのデータがある場合、このデータは削除ツールによって削除されます。

また、Oracle Grid Infrastructureインストールの場合:

  • グリッド・ネーミング・サービス(GNS)が使用中の場合、サブドメインのエントリはDNS管理者によってDNSから削除される必要があります。


削除ツールは、デフォルトでは、インストール所有者としてOracleホームのdeinstallディレクトリから実行します。

$ $ORACLE_HOME/deinstall/deinstall

deinstallコマンドでは、次の構文を使用します。変数はイタリックで示しています。

deinstall [-silent] [-checkonly] [-local] [-paramfile complete path of input response file] 
[-params name1=value name2=value . . .] [-o complete path of directory for saving files] [-help]
 

データベースのインストール・メディアから削除ツールを実行するには、runInstallerコマンドに-deinstallオプションと、その後に-homeオプションを使用し、次の構文を使用して、削除したいOracleホームのパスを指定します(変数の内容はイタリック)。

runInstaller -deinstall -home complete path of Oracle home [-silent] [-checkonly] [-local] [-paramfile complete path of input response file] [-params name1=value
name2=value . . .] [-o complete path of directory for saving files] [-help]
 

サーバーに関する情報の入力を求められたら、情報を入力するかデフォルトを受け入れます。

削除ツールは、Oracleソフトウェアを停止し、オペレーティング・システム上のOracleソフトウェアおよび構成ファイルを削除します。

また、削除ツールは、レスポンス・ファイルを使用して実行するか、次のオプションを選択して実行することができます。

  • -home

    このフラグは、確認または削除するOracleホームのホーム・パスを指定します。

    $ORACLE_HOME/deinstallパスからdeinstallを実行する場合は、実行されているホームの場所をツールで特定できるため、-homeフラグは不要です。インストール・メディアからrunInstaller -deinstallを使用する場合、-homeは必須です。

    削除しようとしているOracleホームでdeinstallコマンドを使用してOracleソフトウェアを削除する場合は、Oracle以外の場所にパラメータ・ファイルを用意し、-homeフラグは使用しないでください。

  • -silent

    このフラグは、非対話型モードで削除ツールを実行します。

    • インストールと構成情報を確認するためにアクセスできる動作中のシステム。-silentフラグを使用すると、障害が発生したインストールは処理されません。

    • 削除または構成解除するOracleホームの構成値が記述されたレスポンス・ファイル

    使用または変更するレスポンス・ファイルは、ツールに-checkonlyフラグを指定して実行すると生成できます。ツールにより、削除および構成解除するOracleホームの情報が検出されます。これによって、次に-silentフラグで使用できるレスポンス・ファイルが生成されます。-silentフラグを使用すると、障害が発生したインストールは処理されません。

  • -checkonly

    このフラグを指定すると、Oracleソフトウェアのホーム構成の状態が確認されます。-checkonlyフラグを指定してdeinstallコマンドを実行した場合、Oracleの構成は削除されません。-checkonlyフラグにより、deinstallコマンドと-silentオプションで使用できるレスポンス・ファイルが生成されます。

  • -local

    このフラグは、複数ノード環境でクラスタ内のOracleソフトウェアを削除する場合に使用します。

    このフラグを指定してdeinstallを実行すると、ローカル・ノード(deinstallが実行されたノード)のOracleソフトウェアの構成が解除され、Oracleソフトウェアが削除されます。リモート・ノードのOracleソフトウェアの削除または構成解除は行われません。

  • -paramfile 入力レスポンス・ファイルの完全パス

    このフラグを指定すると、デフォルト以外の場所にあるレスポンス・ファイルを使用してdeinstallが実行されます。このフラグを使用するときは、レスポンス・ファイルがある完全パスを指定します。

    レスポンス・ファイルのデフォルトの位置は、deinstallの位置によって異なります。

    • インストール・メディアまたはステージの場所からの場合: stagelocation/response

      stagelocationは、インストール・メディアまたはステージ・ファイルの場所にあるベース・ディレクトリのパスです。

    • インストール済Oracleホームからの場合(インストール後): $ORACLE_HOME/deinstall/response

  • -params [name1=value name2=value name3=value . . .]

    このフラグは、パラメータ・ファイルとともに使用して、以前作成したレスポンス・ファイルで変更する1つ以上の値を上書きします。

  • -o 保存するレスポンス・ファイルのディレクトリの完全パス

    このフラグを指定すると、デフォルト以外の場所に、レスポンス・ファイル(deinstall.rsp.tmpl)を保存するパスが指定されます。

    レスポンス・ファイルのデフォルトの位置は、deinstallの位置によって異なります。

    • インストール・メディアまたはステージの場所からの場合: stagelocation/response

      stagelocationは、インストール・メディアまたはステージ・ファイルの場所にあるベース・ディレクトリのパスです。

    • インストール済Oracleホームからの場合(インストール後): $ORACLE_HOME/deinstall/response

  • -help

    ヘルプ・オプション(-help)を指定すると、削除ツールのオプション・フラグに関する追加情報を取得できます。

9.6.1.1 以前のリリースのGridホームの削除

以前のリリースからアップグレードする場合に、以前のリリースのGridホームを削除するには、rootユーザーとして以前のリリースのGridホームの権限を手動で変更し、削除ツールを実行する必要があります。

次に例を示します。

# chown -R grid:oinstall /u01/app/grid/11.2.0
# chmod -R 775 /u01/app/grid/11.2.0

この例では、/u01/app/grid/11.2.0が以前のリリースのGridホームです。

9.6.2 Oracle Grid Infrastructureの削除ツールのコマンドの例

$ORACLE_HOME/deinstallフォルダから削除ツールを使用して削除ツールを実行すると、ORACLE_HOMEに対するプロンプトは表示されずに削除が開始されます。

レスポンス・ファイルにパスを指定するには、オプション・フラグ-paramfileを使用します。

下記の例で、runInstallerコマンドは、パス/directory_pathにあり、directory_pathは、インストール・メディアのdatabaseディレクトリへのパスで、/u01/app/12.1.0/grid/は削除するGridホームへのパスです。

$ cd /directory_path/
$ ./runInstaller -deinstall -home /u01/app/12.1.0/grid

次の例では、ソフトウェア所有者の場所/home/usr/gridにあるレスポンス・ファイルを使用します。

$ cd /directory_path/runInstaller
$ ./runInstaller -deinstall -paramfile /home/usr/grid/my_db_paramfile.tmpl

9.6.3 クラスタ用グリッド・インフラストラクチャの削除レスポンス・ファイルの例

削除ツールに-paramfileオプションを指定して実行すると、レスポンス・ファイルに指定した値を使用することができます。ノードnode1およびnode2のクラスタ用のレスポンス・ファイルの例を次に示します(この例では、クラスタ用Oracle Grid Infrastructureソフトウェアのバイナリ所有者はgrid、Oracle Grid Infrastructureホーム(Gridホーム)はパス/u01/app/12.1.0/gridにあり、Oracleベース(Oracle ASMログ・ファイルやOracle Clusterwareログなどの管理ファイルが格納されたOracle Grid InfrastructureのOracleベース)は/u01/app/grid/、中央Oracle Inventoryホーム(oraInventory)は/u01/app/oraInventory、仮想IPアドレス(VIP)は192.0.2.2192.0.2.4、ローカル・ノード(削除セッションを実行しているノード)はnode1です)。

#Copyright (c) 2005, 2006 Oracle Corporation.  All rights reserved.
#Fri Feb 06 00:08:58 PST 2009
LOCAL_NODE=node1
HOME_TYPE=CRS
ASM_REDUNDANCY=\
ORACLE_BASE=/u01/app/12.1.0/grid/
VIP1_MASK=255.255.252.0
VOTING_DISKS=/u02/storage/grid/vdsk
SCAN_PORT=1522
silent=true
ASM_UPGRADE=false
ORA_CRS_HOME=/u01/app/12.1.0/grid
GPNPCONFIGDIR=$ORACLE_HOME
LOGDIR=/home/grid/SH/deinstall/logs/
GPNPGCONFIGDIR=$ORACLE_HOME
ORACLE_OWNER=grid
NODELIST=node1,node2
CRS_STORAGE_OPTION=2
NETWORKS="eth0"/192.0.2.1\:public,"lan1"/10.0.0.1\:cluster_interconnect
VIP1_IP=192.0.2.2
NETCFGJAR_NAME=netcfg.jar
ORA_DBA_GROUP=dba
CLUSTER_NODES=node1,node2
JREDIR=/u01/app/12.1.0/grid/jdk/jre
VIP1_IF=eth0
REMOTE_NODES=node2
VIP2_MASK=255.255.252.0
ORA_ASM_GROUP=asm
LANGUAGE_ID=AMERICAN_AMERICA.WE8ISO8859P1
CSS_LEASEDURATION=400
NODE_NAME_LIST=node1,node2
SCAN_NAME=node1scn
SHAREJAR_NAME=share.jar
HELPJAR_NAME=help4.jar
SILENT=false
local=false
INVENTORY_LOCATION=/u01/app/oraInventory
GNS_CONF=false
JEWTJAR_NAME=jewt4.jar
OCR_LOCATIONS=/u02/storage/grid/ocr
EMBASEJAR_NAME=oemlt.jar
ORACLE_HOME=/u01/app/12.1.0/grid
CRS_HOME=true
VIP2_IP=192.0.2.4
ASM_IN_HOME=n
EWTJAR_NAME=ewt3.jar
HOST_NAME_LIST=node1,node2
JLIBDIR=/u01/app/12.1.0/grid/jlib
VIP2_IF=eth0
VNDR_CLUSTER=false
CRS_NODEVIPS='node1-vip/255.255.252.0/eth0,node2-vip/255.255.252.0/eth0'
CLUSTER_NAME=node1-cluster  

注意:

次の場合を除いて、変数に引用符を使用しないでください。
  • CRS_NODEVIPSのアドレスの前後:

    CRS_NODEVIPS='n1-vip/255.255.252.0/lan0,n2-vip/255.255.252.0/eth0'
    
  • NETWORKSのインタフェース名の前後:

    NETWORKS="eth0"/192.0.2.1:public,"lan1"/10.0.0.1:cluster_interconnect "eth2"/192.0.2.2:vip1_ip