ページの先頭行へ戻る
Linkexpress Replication optionV5.0L24 導入運用ガイド
FUJITSU Software

3.1.2 レプリケーション運用のためのセットアップ

レプリケーションの運用にあたっては、以下の手順によるセットアップが必要です。

  1. データベースのセットアップ

  2. Linkexpressのセットアップ

  3. Linkexpress Replication optionのセットアップ

3.1.2.1 データベースのセットアップ

複写元・複写先データベースのインストール・セットアップを実施します。ここでは、複写元データベースであるOracleのセットアップについて説明します。なお、Oracleのセットアップの詳細については、Oracleのソフトウェア説明書およびOracleのマニュアルを参照してください。

複写先データベースであるSymfoware ServerまたはEnterprise Postgresのセットアップについては、“Symfoware Server 導入ガイド(サーバ編)”、“Symfoware Server セットアップガイド”または“Enterprise Postgres 導入ガイド(サーバ編)”を参照してください。

3.1.2.1.1 データベースの文字コード系

データベース・キャラクタ・セット(NLS_LANG)がJapanese_Japan.AL32UTF8の場合、

NLS_NCHAR_CHARACTERSETには、UTF8を指定することを推奨します。

3.1.2.1.2 SQLスクリプトの実行

Linkexpress Replication optionのOracle抽出レプリケーションを使用する場合には、以下のSQLスクリプトの実行が必要です。

3.1.2.1.3 リスナーのセットアップ

Linkexpress Replication optionのOracle抽出レプリケーションでは、トリガを利用して差分ログを収集しています。さらにトリガ内では外部プロシジャをコールすることで、トランザクションログデータベースへの格納形式に変換しています。トリガ内で外部プロシジャをコールするためには、リスナー(Listener)を起動する必要があります。以下にリスナーのセットアップ方法および起動方法を説明します。

リスナーのセットアップファイル

リスナーのセットアップは、$ORACLE_HOME/network/admin配下にある以下のファイルを修正します。ファイルがない場合には作成してください。

listener.oraのセットアップ

listener.oraファイルに以下の記述を追加してください。なお、SID_NAME、ORACLE_HOMEはシステムに合うように修正してください。詳細は、Oracleのマニュアルを参照してください。

LinuxLinuxの場合
EXTERNAL_PROCEDURE_LISTENER =     → 1
  (ADDRESS_LIST =
        (ADDRESS= (PROTOCOL= IPC)(KEY= extproc_key))
  )
SID_LIST_EXTERNAL_PROCEDURE_LISTENER =     → 2
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = レプリケーション対象インスタンスのOracleシステム識別子(SID))
      (ENVS = "EXTPROC_DLLS = ONLY:/opt/FJSVlnkre/lib/f3earpofunc64.so")     → 3
      (ORACLE_HOME = Oracleのインストールパス)
      (PROGRAM = extproc)      → 4
    )
  )
  1. 外部プロシジャ用リスナー名です。

  2. 外部プロシジャ用静的サービス登録(SID_LIST)、SID_LIST_外部プロシジャ用リスナー名です。

  3. EXTPROC_DLLSには、Linkexpress Replication optionのライブラリを指定します。
    例)
        (ENVS="EXTPROC_DLLS=ONLY:/opt/FJSVlnkre/lib/f3earpofunc64.so")

  4. 組み合わせるOracleに関係なく、PROGRAMにextprocを指定します。


Solarisの場合
EXTERNAL_PROCEDURE_LISTENER =       → 1
  (ADDRESS_LIST =
        (ADDRESS= (PROTOCOL= IPC)(KEY= extproc_key))
  )
SID_LIST_EXTERNAL_PROCEDURE_LISTENER =       → 2
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = レプリケーション対象インスタンスのOracleシステム識別子(SID))
      (ENVS="EXTPROC_DLLS=ONLY:/opt/FSUNlnkre/lib/f3earpofunc64.so")       → 3
      (ORACLE_HOME = Oracleのインストールパス)
      (PROGRAM = extproc32)       → 4
    )
  )
  1. 外部プロシジャ用リスナー名です。

  2. 外部プロシジャ用静的サービス登録(SID_LIST)、SID_LIST_外部プロシジャ用リスナー名です。

  3. 組み合わせるOracleに関係なく、EXTPROC_DLLSにはf3earpofunc64.soを指定します。

  4. Oracle19cの場合は、extprocを指定してください。

tnsnames.oraのセットアップ

tnsnames.oraファイルに以下の記述を追加してください。すでにextprocに対して定義されている場合(listener.oraファイルのextprocまたはextproc32に対応するKEYが定義されている場合。下の場合にはextproc_key)には、追加する必要はありません。なお、SIDはシステムに合うように修正してください。

extproc_connection_data =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = extproc_key))
    (CONNECT_DATA = (SID = o1010))
  )

extproc.oraファイルのセットアップ

$ORACLE_HOME/hs/adminにextproc.oraファイルが存在する場合は、extproc.oraファイルのSET EXTPROC_DLLSに、「/opt/FJSVlnkre/lib/f3earpofunc64.so」または「/opt/FSUNlnkre/lib/f3earpofunc64.so」を設定します。

SET EXTPROC_DLLSの設定がない場合は新たに設定してください。

例)

LinuxLinuxの場合

SET EXTPROC_DLLS=/opt/FJSVlnkre/lib/f3earpofunc64.so

SolarisSolarisの場合

SET EXTPROC_DLLS=/opt/FSUNlnkre/lib/f3earpofunc64.so

リスナーの起動・停止

Oracleの管理者のログインIDで以下を実行し、リスナーを起動してください。

lsnrctl start リスナー名

リスナー名:上記の例では「EXTERNAL_PROCEDURE_LISTENER」になります。

また、以下の方法でリスナーを停止することができます。

lsnrctl stop リスナー名

リスナー名:上記の例では「EXTERNAL_PROCEDURE_LISTENER」になります。

3.1.2.1.4 sqlnet.oraファイルのセットアップ

Linkexpress Replication optionのOracle抽出レプリケーションにおける全件抽出では、複写元システムで文字コード変換を行う場合、lxrpoextコマンドでデータベースからデータを抽出した後、Linkexpressのlxcnvcdコマンドを内部から実行することで文字コード変換を行っています(UNIXシステム・ハンドラを使用)。

そのため、lxrpoextコマンドを使用するにあたっては、$ORACLE_HOME/network/admin配下のsqlnet.oraファイルを以下のように修正してください。ファイルがない場合には作成してください。

bequeath_detach=yes

sqlnet.oraファイルについての詳細は、Oracleのマニュアルを参照してください。

3.1.2.2 Linkexpressのセットアップ

ここでは、Linkexpressのセットアップの方法について説明します。

Linkexpressのセットアップは以下の手順で行います。

  1. インストール

  2. TCP/IPの環境定義

  3. Linkexpressの環境定義

  4. DB連携機能の環境定義

3.1.2.2.1 インストール

Linkexpressのインストールの方法については、Linkexpressのソフトウェア説明書を参照してください。

3.1.2.2.2 TCP/IPの環境定義

オープンサーバ間でのレプリケーション運用では、通信プロトコルにTCP/IPのFTP+プロトコルを使用します。

TCP/IPの環境定義の方法については、“Linkexpress 導入ガイド”を参照してください。

3.1.2.2.3 Linkexpressの環境定義

Linkexpressの環境定義は以下の手順で行います。

  1. 動作環境定義

  2. ネットワーク定義

  3. サーバグループ定義

動作環境定義

動作環境定義は、Linkexpressの基礎的な動作規定に関する情報を定義します。動作環境定義の方法については、“Linkexpress 導入ガイド”を参照してください。

ネットワーク定義

ネットワーク定義は、データ通信を行うための情報を定義します。ネットワーク定義の方法については、“Linkexpress 導入ガイド”を参照してください。

サーバグループ定義

サーバグループ定義は、サーバ間の運用情報のやり取りで使用されるセキュリティ情報を定義します。サーバグループ定義の方法については、“Linkexpress 導入ガイド”を参照してください。

なお、Linkexpressの環境定義については、“付録A Linkexpressの環境定義例”も併せて参照してください。

3.1.2.2.4 DB連携機能の環境定義

LinkexpressのDB連携機能は、あるシステムのデータを他のシステム上のデータベースに展開(格納)する機能を提供します。Linkexpress Replication optionではDB連携機能を使用してレプリケーション運用を行います。

DB連携機能の環境定義は以下の手順で行います。

  1. 環境変数の設定

  2. DB動作環境定義の作成

環境変数の設定

環境変数の設定方法については、“Linkexpress 運用ガイド”を参照してください。

DB動作環境定義の作成

DB動作環境定義の作成方法については、“Linkexpress 運用ガイド”を参照してください。

DB動作環境定義については、以下の場所にサンプルを提供しています。セットアップ時の参考にしてください。

参考

Linkexpress Replication optionでは、抽出処理時にも内部的にDB連携機能が動作します。このため、サンプルは、格納処理時と抽出処理時の2種類を提供しています。

複写先システムのDB動作環境定義
複写元システムのDB動作環境定義

3.1.2.3 Linkexpress Replication optionのセットアップ

ここでは、Linkexpress Replication optionのセットアップの方法について説明します。

セットアップの手順は、複写元システムと複写先システムで異なります。

セットアップの手順を以下に示します。

複写元システム

複写先システム

1.インストール

1.インストール (注)

2.動作環境ファイルの作成

3.トランザクションログデータベースの作成

注)複写先システムがSymfoware Parallel Serverの場合は、複写先システムのインストールは必要ありません。

3.1.2.3.1 インストール

Linkexpress Replication optionのインストールの方法については、 “インストールガイド”を参照してください。

3.1.2.3.2 環境変数の設定

Linkexpress Replication optionのOracle抽出レプリケーションを使用する場合には、複写元システムで以下の環境変数を設定してください。

参照

  • Oracleを運用するために必要な環境変数については、Oracleのソフトウェア説明書およびマニュアルを参照してください。

  • さらにLinkexpressを運用するための環境変数が必要です。Linkexpressの運用で必要な環境変数については、“Linkexpress 運用ガイド”を参照してください。

  • Linkexpress Replication optionのOracle抽出レプリケーションを使用する場合には、複写先システムでSymfoware ServerまたはEnterprise Postgresの運用で必要な環境変数とLinkexpressを運用するための環境変数が必要です。Symfoware ServerまたはEnterprise Postgresの運用で必要な環境変数については、“Symfoware Server 運用ガイド”、“Symfoware Server セットアップガイド”または“Enterprise Postgres 導入ガイド(サーバ編)”を参照してください。また、Linkexpressの運用で必要な環境変数については、“Linkexpress 運用ガイド”を参照してください。

3.1.2.3.3 動作環境ファイルの作成

Linkexpress Replication optionの動作環境ファイルには、Linkexpress Replication optionの動作条件や、Linkexpress Replication optionが管理するファイルの配置先などを指定します。

Linkexpress Replication optionをインストールすると、動作環境ファイルの雛形が作成されます。

インストール直後の動作環境ファイルの内容は以下のとおりです。

Linux (64bit製品)の例
# Config for Linkexpress Replication option(ORACLE抽出レプリケーション)
CIRCULATING_TIME = 10
DEFMNGPATH = /home/rep/defmng
WORKPATH = /home/rep/workpath
ORACLE_VERSION = 1930

備考:「#」で始まる行はコメント行です。

動作環境ファイルは、上記の雛形を編集して作成します。なお、動作環境ファイルはOracleシステム名(ORACLE_SID)ごとに作成してください。作成するときのファイル名は、“ORACLE_SID.cfg(すべて半角文字で記述します)”です。

動作環境ファイルのオペランド

ここでは、動作環境ファイルに指定するオペランドについて説明します。

動作環境ファイルの更新について

レプリケーション運用中に以下のファイルの更新は行わないでください。

3.1.2.3.4 トランザクションログデータベースの作成

Linkexpress Replication optionでは、一括差分複写を行うために、Oracleの差分データを抽出します。この時、差分データは、トリガを使用してOracleデータベースに蓄積されます。このデータベースをトランザクションログデータベースと呼びます。

トランザクションログデータベースは、あらかじめ利用者によってレプリケーションの運用前(起動前)に、作成しておく必要があります。作成は、Linkexpress Replication optionが提供するシェルスクリプトを実行することにより行います。

トランザクションログデータベースをチューニングする場合や、ユーザ名、表名を省略する場合には、シェルスクリプトのシェル変数を修正してください。以下にトランザクションログデータベースを作成するシェルスクリプトの概要を説明します。シェルスクリプトの詳細については、“付録B トランザクションログデータベースの作成”を参照してください。

注意

  • トランザクションログデータベースは、レプリケーションを行うOracleシステムごとに必要です。

  • トランザクションログデータベースを作成するシェルスクリプトには、レプリケーション管理者用のユーザIDやパスワードなどを記述して実行します。このため、トランザクションログデータベースを作成後はセキュリティを考慮してシェルスクリプトを管理してください。

3.1.2.3.5 レプリケーションの起動

複写元サーバでLinkexpress Replication optionを起動します。起動方法の詳細については、“コマンドリファレンス”の“lxrpostrコマンド”を参照してください。

Linkexpress Replication optionの起動までに以下の準備が必要です。

なお、Linkexpress Replication optionの起動・停止により、差分ログ収集スケジュールが開始・終了されます。差分ログ収集スケジュールについては、以下を参照してください。

差分ログ収集スケジュール

差分ログ収集スケジュールは、トランザクションログデータベースから一定間隔で差分データを収集するスケジュールです。差分ログ収集スケジュールは、動作環境ファイルで指定します。指定方法の詳細は“3.1.2.3.3 動作環境ファイルの作成”を参照してください。

なお、差分ログ収集スケジュールの開始または終了は、レプリケーションの起動または停止により行われます。以下に、差分ログ収集スケジュールの開始または終了タイミングについて説明します。