| Oracle Universal InstallerおよびOpatchユーザーズ・ガイド 11gリリース1(11.1) for Microsoft Windows and UNIX Systems E05707-05 |
|
![]() 戻る |
![]() 次へ |
この章では、Oracle Universal Installer(OUI)を使用したOracleクローニングに関する情報を示します。この章の内容は次のとおりです。
クローニングは、既存のOracleインストールを別の場所にコピーして、新しい環境で機能するようにコピーした部分を更新するプロセスです。クローニング元のOracleホームで個別パッチの適用によって行われた変更は、クローン操作後も存在します。コピー元とコピー先(クローニング先のホスト)のパスが同じである必要はありません。クローニングの際、OUIはホームをインストールするために実行したアクションを再現します。クローン・モードと呼ばれる特殊モードでOUIがアクションを実行することを除けば、インストールとほぼ同じです。クローニングは、次のような状況で役立ちます。
本番、テストまたは開発インストールのコピーであるインストールを作成する場合。クローニングにより、すべてのパッチが適用された新規インストールを1つの手順で作成できます。これは、インストール、構成およびインストールへのパッチの適用を別々の手順で行うインストール・プロセスと対照的です。
インスタンスおよびそのインスタンスにホスティングされているアプリケーションを迅速にデプロイする場合。
Oracleホームを準備し、それを多くのホストにデプロイする場合。
クローニングされたインストールは、クローニング元のインストールと同じ動作をします。たとえば、クローニングされたOracleホームは、OUIを使用して削除したり、OPatchを使用してパッチを適用したりできます。クローニングされたOracleホームは、他のクローニング操作のソースとしても利用可能です。コマンドライン・クローニング・スクリプトを使用することで、テスト・インストール、開発インストールまたは本番インストールのクローン・コピーを作成できます。多くの場合、デフォルトのクローニング手順で十分です。ただし、カスタム・ポート割当ての指定やカスタム設定の保存など、クローニングの様々な特徴をカスタマイズすることもできます。
クローニング・プロセスは、クローニング元のOracleホームからクローニング先のOracleホームにすべてのファイルをコピーします。このため、クローニング元のOracleホームのディレクトリ構造の外部にあるソース・インスタンスで使用されているファイルは、クローニング先の場所にコピーされません。
クローニング元とクローニング先にあるバイナリは、クローン操作の一環として再リンクされるため、これらのバイナリのサイズは異なる場合があります。また、オペレーティング・システムのパッチ・レベルもこの2つの場所で異なる場合があります。さらに、クローニング元からコピーされたいくつかのファイル(具体的にはインスタンス化されているファイル)はクローン操作の一環としてバックアップされるため、クローニング先のホーム内のファイル数は増加します。
OUIのクローニングは、クローニングされるホームのセントラル・インベントリとOracleホーム・インベントリを構成するため、tarballアプローチより優れています。また、クローニングは、ホームの管理を容易にして、クローニングされるホームとターゲット・ホームで異なるパスを使用できます。
クローニング・プロセスは、OUIのクローニング機能を使用します。この操作は、それぞれのOracleソフトウェアに含まれているスクリプトとアドオンの設定により実行されます。クローニング処理には次の2つのフェーズがあります。
クローニング元のOracleホームでクローニングを準備するには、次の手順を実行します。
クローニング元で、prepare_clone.plというスクリプトを実行します。これは、クローニングのソースを準備するPerlスクリプトであり、クローニングに必要な情報を記録します。このスクリプトは、一般に次の場所にあります。
$ORACLE_HOME/clone/bin/prepare_clone.pl
このフェーズ中に、prepare_clone.plにより、クローニング元のOracleホーム内のファイルが解析され、必要な値が抽出および格納されます。
|
注意: 準備フェーズを実行する必要があるかどうかは、インストールしているOracle製品によって異なります。このスクリプトは、アプリケーション・サーバーのクローニングに対してのみ実行する必要があります。データベースとCRS Oracleホームのクローニングでは必要ありません。 |
アーカイブ用の任意のツールを使用して、クローニング元のOracleホームをアーカイブおよび圧縮します。たとえば、Microsoft Windowsシステムのコンピュータの場合はWinZip、UNIXの場合はtarまたはgzipを使用できます。使用しているツールでアクセス権限とファイルのタイムスタンプが保持されることを確認してください。また、ホームをアーカイブする場合は、*.log、*.dbf、listener.ora、sqlnet.oraおよびtnsnames.oraをアーカイブから除外してください。次のフォルダもアーカイブしないでください。
$ORACLE_HOME/<Hostname>_<SID> $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_<Hostname>_<SID>
除外ファイル・リストのサンプルを次に示します。
$ cat excludedFileList.txt ./install/make.log ./cfgtoollogs/cfgfw/CfmLogger_2007-07-13_12-03-16-PM.log ./cfgtoollogs/cfgfw/oracle.server_2007-07-13_12-03-17-PM.log ./cfgtoollogs/cfgfw/oracle.network.client_2007-07-13_12-03-18-PM.log ./cfgtoollogs/cfgfw/oracle.has.common_2007-07-13_12-03-18-PM.log ./cfgtoollogs/cfgfw/oracle.assistants.server_2007-07-13_12-03-18-PM.log ./cfgtoollogs/cfgfw/OuiConfigVariables_2007-07-13_12-03-18-PM.log ./cfgtoollogs/cfgfw/oracle.sysman.console.db_2007-07-13_12-03-18-PM.log ./cfgtoollogs/cfgfw/oracle.sqlplus.isqlplus_2007-07-13_12-03-18-PM.log ./cfgtoollogs/oui/cloneActions2007-07-13_11-52-19AM.log ./cfgtoollogs/oui/silentInstall2007-07-13_11-52-19AM.log
次の例では、各種プラットフォームでソースをアーカイブおよび圧縮する方法を示します。
To archive and compress: tar cpf - . | compress -fv > temp_dir/archiveName.tar.Z ( for "aix" or $^O eq "hpux") tar cpfX - excludeListFile . | compress -fv > temp_dir/archiveName.tar.Z (for remaining UNIX based systems)
|
注意: Oracleホームのアーカイブおよび圧縮には、jarユーティリティを使用しないでください。 |
クローニング先のシステムで、Oracleホームを解凍し、clone.plスクリプトを実行します。このPerlスクリプトは、OUIおよび様々なユーティリティを実行することで、クローニング操作のすべての部分を自動的に実行します。このスクリプトは、OUIのクローニング機能を利用します。clone.plスクリプトを実行すると、OUIで対応されていない可能性のある詳細が処理されます。ホームがクローニングされるコンピュータのセントラル・インベントリは、Oracleホーム・インベントリ($ORACLE_HOME/inventory)であるため、更新されます。
次の例では、各種プラットフォームでソースを解凍する方法を示します。
To unarchive: mkdir Destination_oracle_home cd Destination_oracle_home zcat temp_dir/archiveName.tar.Z | tar xpf - (for "hpux") zcat temp_dir/archiveName.tar.Z | tar xBpf - (for remaining UNIX based systems)
クローニングを行うには、システムにPerl 5.6以上がインストールされている必要があります。必ずパス環境変数を適切なPerl実行可能ファイルに設定してください。
|
注意: クローニング先のホームには、クローニング操作中に作成された追加のファイルが含まれるため、クローニング先のホームとクローニング元のホームのサイズは同一になりません。 |
クローニング・スクリプトは、複数のツールを実行します。各ツールは独自のログ・ファイルを生成することがあります。ただし、次のログ・ファイルはOUIとクローニング・スクリプトによって生成されたもので、診断目的としては興味深い重要なログ・ファイルです。
<Central_Inventory>/logs/cloneActions timestamp.log: クローニングのOUI部分で行われたアクションの詳細ログが格納されます。
<Central_Inventory>/logs/oraInstall timestamp.err: OUIの実行中に発生したエラーに関する情報が格納されます。
<Central_Inventory>/logs/oraInstall timestamp.out: OUIにより生成されたその他のメッセージが格納されます。
$ORACLE_HOME/clone/logs/clone timestamp.log: クローニング前およびクローニング操作中に行われたアクションの詳細ログが格納されます。
$ORACLE_HOME/clone/logs/error timestamp.log: クローニング前およびクローニング操作中に発生したエラーに関する情報が格納されます。
Oracleインベントリ・ディレクトリの場所を探すには、LinuxとIBM AIXを除くすべてのUNIXシステムのコンピュータの場合、/var/opt/oracle/oraInst.locファイルを参照します。IBM AIXおよびLinuxベースのシステムでは、/etc/oraInst.locファイルを参照します。
Windowsシステムのコンピュータでは、Windowsレジストリ・キーHKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\INST_LOCから場所を取得できます。
clone.plスクリプトの実行が終了した後、これらのログ・ファイルを参照して、クローニング・プロセスに関する詳細情報を入手します。
Oracle Database 11.1のOracleホームのクローニングには2つの手順があります。
クローニング元のOracleホームでクローニングを準備するには、次の手順を実行します。
ホームをクローニングするOracle Databaseのインストールが正常に終了したことを確認してください。
Windowsシステムのコンピュータの場合は、インストール・セッションに対するinstallActionsdate_time.logファイルを見ることで、インストールのステータスを確認できます。date_timeは、ファイルが作成された日付と時刻を表します(例: installActions2007-05-30_10-28-04PM.log)。このログ・ファイルは、通常、c:\Program Files\Oracle\Inventory\logsディレクトリにあります。
Linuxベースのシステムの場合、ログは<inventory location>/logsディレクトリに保存されています。セントラル・インベントリの場所を確認するには、「ログ・ファイルの検索および表示」を参照してください。
パッチをインストールした場合は、次のコマンドを実行してパッチのステータスを確認できます。
Windowsベース・システムのコンピュータの場合:
c:\ORACLE_BASE\ORACLE_HOME\OPatch> set ORACLE_HOME = ORACLE_HOME_using_patch c:\ORACLE_BASE\ORACLE_HOME\OPatch> opatch lsinventory
Linuxベース・システムおよびUNIXベース・システムの場合:
/ORACLE_BASE/ORACLE_HOME/OPatch> setenv ORACLE_HOME ORACLE_HOME_using_patch /ORACLE_BASE/ORACLE_HOME/OPatch> ./opatch lsinventory
アーカイブ用の任意のツールを使用して、クローニング元のOracleホームをアーカイブおよび圧縮します。詳細は、「ソース準備フェーズ」を参照してください。
Oracle Database 11.1をクローニングするには、次の手順を実行します。
zipファイルまたはアーカイブ・ファイルをクローニング先のコンピュータにコピーします。
クローニング先のコンピュータに、zipファイルまたはアーカイブ・ファイルの内容を展開します。内容の抽出については、「クローニング・フェーズ」を参照してください。
クローニング先のコンピュータで$ORACLE_HOME/clone/binディレクトリに移動し、clone.plを実行します。このPerlスクリプトは、様々なユーティリティおよびOUIを呼び出すことで、クローニング操作のすべての部分を自動的に実行します。このスクリプトは、OUIのクローニング機能を利用します。
|
注意: clone.plスクリプトは、ソフトウェアのみをクローニングし、データベース・インスタンスはクローニングしません。 |
次のコマンドは、clone.plスクリプトの構文を示します。
Windowsベース・システムの場合:
perl <Oracle_Home>\clone\bin\clone.pl ORACLE_BASE=<path to oracle base>
ORACLE_HOME=<Path to the Oracle_Home being_cloned> ORACLE_HOME_
NAME=<Oracle_Home_Name for the Oracle_Home being cloned> [-command_line_
arguments]
Linuxベース・システムおよびUNIXベース・システムの場合:
perl <Oracle_Home>/clone/bin/clone.pl ORACLE_BASE=<path to oracle base>
ORACLE_HOME=<Path to the Oracle_Home being_cloned> ORACLE_HOME_
NAME=<Oracle_Home_Name for the Oracle_Home being cloned> [-command_line_
arguments]
前述のコマンドは、<command_line_arguments>という変数を使用しています。表6-1は、コマンドライン引数の説明です。
表6-1 clone.plスクリプトのコマンドライン引数
| コマンドライン引数 | 説明 |
|---|---|
|
-O |
この引数を使用する場合は、この引数に続く文字列がOUIのクローン・コマンドラインに渡されます。たとえば、このオプションを使用して、OUIで使用する '-O -paramFile C:\OraHome_1\oui\oraparam.ini' |
|
-debug |
この引数を使用した場合、スクリプトはデバッグ・モードで実行されます。 |
|
-help |
この引数を使用した場合、スクリプトはクローン・スクリプトのヘルプを出力します。 |
$ORACLE_HOME/clone/config/cs.propertiesファイルを使用することにより、コマンドラインに値を渡すこともできます。clone_command_line=<value>に値を入力できます。ここで入力した値は、クローン操作のために実行されるOUIコマンドラインに追加されます。
たとえば、UNIXシステムのコンピュータでOracleインベントリ・ファイルについてデフォルト以外の場所を指定するには、cs.propertiesファイルに次の行を追加します。
clone_command_line= -invptrloc /private/oracle/oraInst.loc
|
注意: 複数の引数を指定するには、各引数を空白で区切ります。 |
OUIが起動してcloneActionstimestamp.logファイルにクローニング・アクションを記録した後、必要に応じてログ・ファイルを検索します。
Windowsベースのシステムでは、通常、このログ・ファイルは次のディレクトリにあります。
c:\Program Files\Oracle\Inventory\logs
LinuxベースおよびUNIXベースのシステムでは、通常、このログ・ファイルは次のディレクトリにあります。
c:\Program Files\Oracle\Inventory\logs
新規データベースの接続情報を構成するには、Net Configuration Assistantを実行します。
Windowsベースのシステムの場合は、「スタート」→「プログラム」→「Oracle - HOME_NAME」→「Configuration and Migration Tools」→「Net Configuration Assistant」を選択します。
LinuxベースおよびUNIXベースのシステムでは、ORACLE_HOME変数を設定して、$ORACLE_HOME/bin/netcaを実行します。
新しくクローニングされたOracleホームに新規データベースを作成するには、Oracle Database Configuration Assistantを実行します。
Windowsベースのシステムの場合は、「スタート」→「プログラム」→「Oracle - HOME_NAME」→「Configuration and Migration Tools」→「Database Assistant」を選択します。
LinuxベースおよびUNIXベースのシステムでは、$ORACLE_HOME/bin/dbcaを実行します。
クローニング後に、$ORACLE_HOME/clone/logディレクトリに移動し、*.logおよび*.errファイルを参照することにより、クローン操作のステータスを確認できます。詳細は、「ログ・ファイルの検索および表示」を参照してください。
Oracle ClusterwareおよびOracle Real Application Clustersホームをクローニングする手順は、次のドキュメントを参照してください。
『Oracle Real Application Clusters管理およびデプロイメント・ガイド』
第7章「クローニングを使用したASMおよびOracle RACの新規クラスタのノードへの追加」
第8章「クローニングを使用したOracle RACの同一クラスタ内のノードへの拡張」
『Oracle Clusterware管理およびデプロイメント・ガイド』
第3章「Oracle Clusterwareのクローニング」