この章では、SharePlexの複数のインスタンスを1台のマシンで設定し、実行する方法を説明します。例えば、複数のソースシステムから中央のターゲットシステムに対するレプリケーションが設定されている場合、sp_copの複数のインスタンスを実行してレプリケーションストリームを分離することができます。
重要このトピックでは、アクティブな設定がないことを前提としています。レプリケーション環境の初期セットアップの一環として、sp_copの複数のインスタンスを設定するものとします。
この方法によって、バイナリと変数データディレクトリの間に1対1の関係が指定されます。この手順はSharePlexインスタンスを自律的に作成するもので、インスタンス間に共通点はありません。SharePlexの各インスタンスを個別に開始、制御、維持することができ、特別なセットアップは必要ありません。
この方法には以下のようなメリットがあります。
同じシステム上で同じバージョンまたは異なるバージョンのSharePlexを実行することができます。
デメリットは以下の通りです。
この設定でSharePlexの複数のインスタンスを設定するには:
重要インストールするたびに必ず異なるデータベースアカウントを作成してください。
SharePlexをインストールするには、『SharePlexインストールガイド』を参照してください。
重要このトピックでは、アクティブな設定がないことを前提としています。レプリケーション環境の初期セットアップの一環として、sp_copの複数のインスタンスを設定するものとします。
この方法によって、バイナリセットと複数の変数データディレクトリの間に1対多の関係が指定されます。この設定では、複数の変数データディレクトリを作成し、それぞれを一意のポート番号にリンクして、sp_copの個別のインスタンスを実行します。
この方法には以下のようなメリットがあります。
デメリットは以下の通りです。
同じUnixまたはLinuxマシン上で複数のSharePlexインスタンスを実行するには、sp_copプログラムの複数のインスタンスをそれぞれ異なるポート番号で実行します。sp_copをそれぞれ別の変数データディレクトリにリンクします。各変数データディレクトリは、そのsp_copのポート番号で識別されます。ソースまたはターゲットのデータストアへの接続情報は、各sp_copインスタンスにリンクされています。
sp_copの各インスタンスに一意のポート番号を割り当てます。
sp_copプロセスは、ExportプロセスとImportプロセス間のデータ交換など、ネットワーク上の2つの異なるシステム間の通信にTCPポートを使用します。ポートが異なる場合、1つのシステムのsp_copは、別のシステムのsp_copに接続してメッセージを送受信することはできません。
各sp_copインスタンスで、変数データディレクトリを作成し、それぞれを取得したポート番号の1つに割り当てます。変数データディレクトリにはSharePlexインスタンスに固有の環境が含まれています。
実行する各sp_copインスタンスに対して、元の変数データディレクトリ(サブディレクトリを含む)を新しい変数データディレクトリにコピーします。以下の例のように、それぞれの名前にポート番号を含めます。
cp -p -r /splex/vardir/splex2100 /splex/vardir/splex2101
cp -p -r /splex/vardir/splex2100 /splex/vardir/splex2102
作成した各変数データディレクトリでこの手順を実行し、SharePlexのこのインスタンス用に予約したポート番号を設定します。
SP_SYS_VARDIR変数をエクスポートして、前の例のsplex2101のように新しい変数データディレクトリの1つを指すようにします。
kshシェル:
export SP_SYS_VARDIR=/full_path_of_variable-data_directory
cshシェル:
setenv SP_SYS_VARDIR=/full_path_of_variable-data_directory
SP_COP_TPORT変数と SP_COP_UPORT変数をエクスポートして、エクスポートした変数データディレクトリのポート番号を指すようにします。
kshシェル:
export SP_COP_TPORT=port
export SP_COP_UPORT=port
cshシェル:
setenv SP_COP_TPORT port
setenv SP_COP_UPORT port
各sp_copインスタンスで、SharePlexがこのSharePlexインスタンスのソースまたはターゲットデータにアクセスするために使用する接続を確立します。
SP_SYS_VARDIR変数をエクスポートして、splex2101のように新しい変数データディレクトリの1つを指すようにします。
kshシェル:
export SP_SYS_VARDIR=/full_path_of_variable-data_directory
cshシェル:
setenv SP_SYS_VARDIR=/full_path_of_variable-data_directory
データベースの適切なデータベース・セットアップ・ユーティリティを実行します。詳細については、『SharePlexリファレンスガイド』の「データベース・セットアップ・ユーティリティ」を参照してください。
必要に応じてsp_copとsp_ctrlの個別のインスタンスを実行できるようになりました。
SP_SYS_VARDIR環境変数をエクスポートして、最初のsp_copインスタンスの変数データディレクトリを指すようにします。
kshシェル:
export SP_SYS_VARDIR=/full_path_of_variable-data_directory
cshシェル:
setenv SP_SYS_VARDIR=/full_path_of_variable-data_directory
-uオプションを使用してsp_copを開始します。ここで、portはsp_copインスタンスに割り当てられたポートです。
/splex/proddir/bin/sp_cop -u port &
sp_ctrlでportコマンドを使用して、セッションをsp_copインスタンスのポート番号に設定します。
./sp_ctrl
port number
注: 以下のようなエラーメッセージが表示された場合は、同じポート番号と変数データディレクトリを使用して、他の誰かがsp_copのセッションを開始していないか確認してください。許容される場合は、そのセッションに関連するプロセスを終了してsp_copを再度開始します。
Error cleaning up previous shared memory segment ###.
Cannot delete because there are users attached.
Check if SharePlex processes are running and kill them if necessary.
この章では、sp_ctrlコマンドインターフェイスを使用してSharePlexを設定、制御、監視するコマンドを実行する手順を説明します。sp_ctrlプログラムは、 SharePlexの製品ディレクトリのbinサブディレクトリにあります。
注: このトピックで示したコマンドの詳細については、『SharePlexリファレンスガイド』を参照してください。
© ALL RIGHTS RESERVED. 利用規約 プライバシー Cookie Preference Center