clone.plスクリプトは取得したパラメータの値に依存するため、括弧、一重引用符および二重引用符は正確に使用する必要があります。エラーの発生を回避するために、start.shスクリプトに類似したファイルを作成(例8-1を参照)して、そこでclone.plスクリプトに対する環境変数およびクローニング・パラメータを指定できます。
例8-1は、clone.plスクリプトをコールするstart.shというサンプル・スクリプトからの抜粋を示しており、例はcrsclusterというクラスタ用に構成されています。Oracle Clusterwareをインストールしたオペレーティング・システム・ユーザーとしてスクリプトを実行します。
注意:
Solarisシステムでは、hostnameの後の-sはありません。
start.shスクリプトでは、表8-2に示すように、いくつかの環境変数およびクローニング・パラメータが設定されます。表8-2に、環境変数E01、E02、E03、E04(例8-1では太字でしめされている)、およびC01およびC02を示します。
表8-2 clone.plスクリプトに渡される環境変数
| 記号 | 変数 | 説明 |
|---|---|---|
|
|
Oracleベース・ディレクトリの場所。 |
|
|
Oracle Grid Infrastructureホームの場所。このディレクトリの場所は存在している必要があり、Oracleオペレーティング・システム・グループのOINSTALLによって所有されている必要があります。 |
|
|
Oracle Grid Infrastructureホームの名前。Oracleインベントリに格納されています。 |
|
|
Oracleインベントリの場所。このディレクトリの場所は存在している必要があり、最初にOracleオペレーティング・システム・グループのOINSTALLによって所有されている必要があります。 |
|
|
クラスタ内のノードの短縮名のカンマ区切りリスト。 |
|
|
ローカル・ノードの短縮名。 |
例8-1 Oracle Clusterwareをクローニングするstart.shスクリプトの抜粋
#!/bin/sh ORACLE_BASE=/u01/app/oracle GRID_HOME=/u01/app/12.1/grid THIS_NODE=`hostname -s` E01=ORACLE_BASE=${ORACLE_BASE} E02=ORACLE_HOME=${GRID_HOME} E03=ORACLE_HOME_NAME=OraGridHome1 E04=INVENTORY_LOCATION=${ORACLE_BASE}/../oraInventory #C00="-debug"
C01="CLUSTER_NODES={node1,node2}"
C02="LOCAL_NODE=$THIS_NODE"
perl ${GRID_HOME}/clone/bin/clone.pl -silent $E01 $E02 $E03 $E04 $C01 $C02 CRS=TRUE