>> はじめに

前回は、1台のマシンへSharePlexのインストールを行うところまで解説しました。今回は、さらにSharePlex用のOracleの設定等を実施していきます。

なお、SharePlexでは、随時細かいリビジョンやパッチのバージョンが上がったバイナリがリリースされていますので、確認する時点で最新バージョンをご使用ください。大きな手順等に違いはありません。

では早速、前回の続きから作業を進めていきます。

>> 環境変数の設定

インストール時に設定したSharePlex用の管理者ユーザ用の、環境変数を設定します。最初にデフォルトで作成されるユーザのシェル環境がshになっているため、好みに合わせて変更します。ここではbashに変更してから、bash用の環境変数を変更しています。


[root@rhel5sposrc1 ~]# usermod -s /bin/bash splex [root@rhel5sposrc1 ~]# su - splex [splex@rhel5sposrc1 ~]$ [splex@rhel5sposrc1 ~]$ vi ./.bash_profile

以下に.bash_profileに追記すべき内容についてご案内します。

最初にOracle用の設定を行います。この部分については、権限があればORA_NLS10以外は、Oracle用の管理ユーザの環境変数からコピーしてきてもよいでしょう。更にその下にSharePlex用の各種設定を行います。

  • SP_COP_TPORT: SharePlex用のTCPポート (デフォルトは2100番)
  • SP_COP_UPORT: SharePlex用のUDPポート (デフォルトは2100番)
  • SP_SYS_PRODDIR: SharePlex用の"product directory location" (インストール時に指定)
  • SP_SYS_VARDIR: SharePlex用の"variable data directory location" (インストール時に指定)
  • SP_SYS_HOST_NAME: SharePlexのインストールされたマシンのホスト名
  • SP_BIN: SharePlexの管理用ツールがあるbinディレクトリ
  • SP_LOG: SharePlexのLOGが格納されるlogディレクトリ

export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export ORACLE_SID=src1 export PATH=$ORACLE_HOME/bin:$PATH export ORA_NLS10=$ORACLE_HOME/nls/data export SP_COP_TPORT=2100 export SP_COP_UPORT=2100 export SP_SYS_PRODDIR=$HOME/splex export SP_SYS_VARDIR=$HOME/vardir export SP_SYS_HOST_NAME=rhel5sposrc1 export SP_BIN=$SP_SYS_PRODDIR/bin export SP_LOG=$SP_SYS_VARDIR/log

もちろん、すべて設定したら、環境変数が有効になるように、.bash_profileを実行するなり、ログインしなおす等してください。

>> SharePlex用のオブジェクトの生成

SharePlexは、レプリケーションを実行する際に、その管理用としてOracleデータベース内に専用のオブジェクトを使用します。動作にあたっては、最初にora_setupコマンドを使用しウィザードに従って生成する必要があります。まず、前提としてOracleデータベースが動作していることを確認しておいてください。

準備が整ったら、$SP_BINディレクトリに移動してora_setupを実行し、ウィザードに従って入力していきます。SharePlexがインストールされたマシンのOracle SIDを入力すると、SYSDBAを持つSYSTEMアカウントとそのパスワードを入力します。[ ]内にはデフォルトが表示されるため、そのままで良い場合には、単にEnterを入力するだけでよいです。


[splex@rhel5sposrc1 ~]$ cd $SP_BIN [splex@rhel5sposrc1 bin]$ ./ora_setup Welcome to the Oracle SharePlex setup process. This process creates tables and user accounts needed to run Oracle SharePlex replication. Please note the following: ** In response to prompts, a carriage return will choose the default given in brackets. If there is no default, a reply must be entered. ** To exit the program while the program is waiting for input, use the CTRL-C key sequence. This sequences can be entered by holding down the CONTROL key and pressing the C key. Enter the Oracle SID for which SharePlex should be installed [src1] : In order to create the SharePlex tables and user account, we must connect to the database as a DBA user Enter a DBA user name : SYSTEM Enter password for the DBA account, which will not echo : connecting--This may take a few seconds. validating user name and password. . . This may take a few seconds.

SYSDBAを持つアカウントにより、SharePlex用のOracleユーザが作成されます。デフォルトは、SPLEXユーザで、パスワードも同じになっていますが、当然運用環境では変更が必要です。

また、実際にオブジェクトを生成する表領域やインデックス用およびTEMP用の表領域を指定します。例は評価環境で別途表領域を作成していないため、テーブルとインデックス用にはUSERS等を使用しています。運用環境の場合には、可能であれば専用が望ましいです。


SharePlex objects will need to be created under a special account. You can pick an existing user or create a new one. Would you like to create a new SharePlex user ? Yes : y Enter username for new user [SPLEX/SPLEX] : Warning: This user is now being granted unlimited tablespace. This privilege will remain in effect until it is explicitly changed. SPLEX_ROLE_BOTH already exists; continuing setup . . . Setup will now install SharePlex objects. These are the existing tablespaces. SYSTEM SYSAUX UNDOTBS1 TEMP USERS EXAMPLE Enter the default tablespace for use by SharePlex [USERS] : Enter the temporary tablespace for use by SharePlex [TEMP] : Enter the index tablespace for use by SharePlex [ ] : USERS Creating SharePlex objects [Installation type: Fresh]. . . Creating SharePlex Oracle-timezone-region map . . . Done. Creating Conflict Resolution Package . . . Done. Setup of SharePlex objects successful . . . Creating SharePlex Dataequator Read Anydata Function . . . Done. Creating SharePlex Dataequator Write Anydata Function . . . Done. Changing SharePlex parameter database . . . Setup completed successfully

 

>> すべてのサーバへのインストール

ソース・システムとターゲット・システムでの、インストール方法等に違いはありません。2台で確認するということであれば、双方にSharePlexのインストールおよびSharePlex用のオブジェクトの生成を行います。手順は、まったく同じになりますので、ここでは割愛させていただきます。

>> SharePlexの起動と確認

インストールが完了後、ソース・システムとターゲット・システムでSharePlexのメインのプロセスである、sp_copを起動します。


[splex@rhel5sposrc1 ~]$ cd $SP_BIN [splex@rhel5sposrc1 bin]$ ./sp_cop & [1] 4745 [splex@rhel5sposrc1 bin]$ ******************************************************* * SharePlex for Oracle Startup * ゥ 2010 Quest Software, Inc. * ALL RIGHTS RESERVED. * Protected by U.S. Patents: 7,461,103 and 7,065,538 * Version: 7.6.2.59-m64-oracle110 * VarDir : /home/splex/vardir * Port : 2100 *******************************************************

※上記を双方で実行します。

メインのプロセス起動後に、SharePlexの管理用CLIコマンドである、sp_ctrlコマンドを実行して、ステータスを確認すると、copというメインのプロセスと、コマンドコントロール用のプロセスだけが起動しているのが確認できます (この時点では、どちらのシステムでも同じ表示です)。


[splex@rhel5sposrc1 bin]$ ./sp_ctrl ******************************************************* * SharePlex for Oracle Command Utility * ゥ 2010 Quest Software, Inc. * ALL RIGHTS RESERVED. * Protected by U.S. Patents: 7,461,103 and 7,065,538 ******************************************************* sp_ctrl (rhel5sposrc1:2100)> status Brief Status for rhel5sposrc1 Process State PID Running Since --------------- ------------------------------ -------- -------------------- Cop Running 4745 28-Mar-12 19:31:31 Cmd & Ctrl Running 4785 28-Mar-12 19:35:09 There are no active configuration files

 

>> まとめ

以上の作業で、SharePlexのインストールが完了して、レプリケーションの設定を受け入れる準備までが終了しました。インストール作業自体は、意外と簡単だという印象を持っていただけたかと思います。

ただ、この状態ではまだレプリケーション自体は行われていませんので、次回は簡単な設定方法と実際の動作確認方法等についてご紹介します。