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

1.1.3 レプリケーションサービスの開始

複写元サーバでは、データベースの更新によって取得された差分ログを、差分ログファイルに一定間隔で収集するレプリケーションサービスを開始します。

ここでは、複写元サーバでのレプリケーションサービスの開始について、以下の3つの方法について説明します。

なお、レプリケーションサービスの開始・停止により、差分ログ収集が開始・終了されます。差分ログ収集については、“1.1.3.4 差分ログ収集について”を参照してください。

Windows

注意

  • レプリケーションサービスの開始および停止は、Administrator権限のあるユーザ(Administratorsグループに属するユーザ)が行ってください。

  • Windows Server 2008、Windows Server 2008 R2、Windows Server 2012またはWindows Server 2016において、Administrator権限が必要なコマンドは、“管理者: コマンドプロンプト”から実行する必要があります。[コマンドプロンプト]を右クリックして表示されるメニューから[管理者として実行]を選択し、“管理者: コマンドプロンプト”を起動してください。

  • レプリケーションサービスを開始するためには事前にSymfoware ServerまたはEnterprise Postgresを起動しておく必要があります。Symfoware ServerまたはEnterprise Postgresが未起動の状態でレプリケーションサービスを開始すると、エラーになります。

1.1.3.1 コマンドで行う場合

Linkexpress Replication optionのコマンドで行う場合には、lxrepstrコマンドを使用します。lxrepstrコマンドの詳細については、“コマンドリファレンス”の“lxrepstrコマンド”を参照してください。

SolarisLinux1.1.3.2 自動起動停止スクリプトで行う場合

サーバの起動時や停止時にレプリケーションサービスの開始と停止を自動的に行う場合には、自動起動停止スクリプトを利用することで可能です。

Linux1.1.3.2.1 Linuxの場合

セットアップ方法

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


rcスクリプトを使用する場合
  1. サービス名の命名
    同一サーバ内の他のレプリケーションサービスと重複しない名前を命名します。

  2. スクリプトを複写して権限を変更
    Linkexpress Replication optionのインストール先に格納されているスクリプトを、手順1.で命名したサービス名で複写します。
    以下、手順例です。

    # cp /opt/FJSVlnkre/SAMPLE/SYMFOPGS/rc_lnkrep /etc/rc.d/init.d/サービス名
    # chmod 755 /etc/rc.d/init.d/サービス名
  3. スクリプトを編集
    手順2.で複写したスクリプト内の変数を編集します。

    変数名

    編集内容

    LXREPCONFIG

    レプリケーションの動作環境ファイルのパス名を指定します。

    REPUSER

    レプリケーションサービスを開始するOSのユーザ名を指定します。編集しない場合にはrootとなります。

    LD_LIBRARY_PATH

    /opt/Symfoware_Server_Client_installdir/libをSymfoware Server ClientまたはEnterprise Postgres Clientのインストール先/libに変更します。

  4. シンボリックリンクの作成
    自動起動させるために、以下のディレクトリに対してシンボリックリンクを作成します。
    - /etc/rc.d/rc2.d
    - /etc/rc.d/rc3.d
    - /etc/rc.d/rc4.d
    - /etc/rc.d/rc5.d

    以下、手順例です。

    # ln -s /etc/rc.d/init.d/サービス名 /etc/rc.d/rc2.d/S99サービス名

    また、自動停止させるために、以下のディレクトリに対してもシンボリックリンクを作成します。
    - /etc/rc.d/rc0.d
    - /etc/rc.d/rc1.d
    - /etc/rc.d/rc6.d

    以下、手順例です。

    # ln -s /etc/rc.d/init.d/サービス名 /etc/rc.d/rc0.d/K00サービス名

systemdを使用する場合
  1. レプリケーションサービス名の決定
    他のレプリケーションサービスと重複しない名前を決定します。

  2. Unitファイルの作成
    Linkexpress Replication optionのインストール先に格納されているUnitファイルのサンプルを複写し、対象とするレプリケーションサービスに合わせて修正します。
    以下、手順例です。

    レプリケーションサービスのサービス名がrepsvc1”の場合

    # cp /opt/FJSVlnkre/SAMPLE/SYMFOPGS/lnkrep.service.sample
      /usr/lib/systemd/system/lnkrep_repsvc1.service

    Unitファイルは以下のパラメタを修正します。

    セクション

    パラメタ

    指定値

    説明

    Unit

    Description

    Linkexpress Replication option service <レプリケーションサービス名>

    機能概要を記述します。

    該当するレプリケーションサービスを識別できる名称を記述します。

    Requires

    接続先のSymfoware ServerまたはEnterprise PostgresのUnitファイル名(注1)

    例:
    Requires=symfosvoi_inst1.service

    レプリケーションサービス起動時の前提となる、接続先データベース・インスタンスのUnitファイル名を指定します。
    DBミラーリングシステム連携の場合は、Requiresパラメタをコメントアウトするか、削除してください。

    After

    network.target network-online.target

    接続先のSymfoware ServerまたはEnterprise PostgresのUnitファイル名(注1)(注2)

    例:
    After=network.target network-online.target
    After=symfosvoi_inst1.service

    レプリケーションサービス起動時の前提となる、接続先データベース・インスタンスのUnitファイル名を指定します。

    Service

    User

    ユーザ名

    レプリケーションサービスを開始するOSのユーザ名を指定します。

    Group

    グループ

    レプリケーションサービスを開始するOSのユーザ名の所属するグループを指定します。

    Environment

    環境変数名=設定値

    レプリケーションサービスを開始する際に必要な環境変数を指定します。

    注1) Symfoware ServerまたはEnterprise Postgresの自動起動の設定においてsystemctlコマンドに指定したUnitファイル名を指定します。
    注2) DBミラーリングシステム連携の場合は、Symfoware ServerまたはEnterprise Postgresの自動起動と連動してレプリケーションサービスを起動することはできません。
    Linkexpress Replication optionのUnitファイルにおいて、UnitセクションのAfterパラメタにSymfoware ServerまたはEnterprise PostgresのUnitファイル名を記述しないでください。

    ServiceセクションのEnvironmentに指定するパラメタは以下の通りです。

    パラメタ

    指定値

    説明

    SFW_INST_PATH

    Symfoware Server ClientまたはEnterprise Postgres Clientのインストール先パス名

    例:
    Environment=SFW_INST_PATH=/opt/symfoclient64

    Symfoware Server ClientまたはEnterprise Postgres Clientのインストール先を絶対パスで指定します。

    LXREPCONFIG

    動作環境ファイルの絶対パス名

    例:
    Environment=LXREPCONFIG=/home/lnkuser/lnkrep.cfg

    動作環境ファイルの配置先を絶対パスで指定します。

    LANG

    ja_JP.UTF-8または

    C

    例:
    Environment=LANG=ja_JP.UTF-8

    Linkexpress Replication optionのインストール時のOSのデフォルトロケールを設定します。

    DBUSER

    Symfoware ServerまたはEnterprise Postgresに接続するユーザ名

    例:
    Environment=DBUSER=symfo

    レプリケーションプロセスがSymfoware ServerまたはEnterprise Postgresに接続するユーザの名前を指定します。

    省略した場合は、Unitファイルに指定したUserパラメタが指定値になります。

  3. 自動起動・停止の有効化
    OSのスーパーユーザーで、systemctlコマンドを使って自動起動・停止を有効にします。
    以下、手順例です。

    レプリケーションサービスのサービス名がrepsvc1”の場合

    # systemctl enable lnkrep_repsvc1.service

アンセットアップ方法

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


rcスクリプトを使用する場合
  1. レプリケーションサービスの停止
    1.2.2.3 レプリケーションサービスの開始と停止”を参照してください。

  2. シンボリックリンクの削除
    シンボリックリンクを以下のディレクトリから削除して、自動停止を解除します。
    - /etc/rc.d/rc0.d
    - /etc/rc.d/rc1.d
    - /etc/rc.d/rc6.d

    以下、手順例です。

    # rm /etc/rc.d/rc0.d/K00サービス名

    また、シンボリックリンクを以下のディレクトリから削除して、自動起動を解除します。
    - /etc/rc.d/rc2.d
    - /etc/rc.d/rc3.d
    - /etc/rc.d/rc4.d
    - /etc/rc.d/rc5.d

    以下、手順例です。

    # rm /etc/rc.d/rc2.d/S99サービス名
  3. スクリプトの削除
    複写したスクリプトを削除します。
    以下、手順例です。

    # rm /etc/rc.d/init.d/サービス名

systemdを使用する場合
  1. レプリケーションサービスの停止

    1.2.2.3 レプリケーションサービスの開始と停止”を参照してください。

  2. 自動起動停止の無効化
    OSのスーパーユーザーで、systemctlコマンドを使って自動起動停止を無効にします。
    以下、手順例です。

    レプリケーションサービスのサービス名がrepsvc1”の場合

    # systemctl disable lnkrep_repsvc1.service
  3. Unitファイルの削除
    複写したUnitファイルを以下のディレクトリから削除します。
    以下、手順例です。

    レプリケーションサービスのサービス名がrepsvc1”の場合

    # rm /usr/lib/systemd/system/lnkrep_repsvc1.service

注意

  • 自動起動は以下の順番になるようにシンボリックリンクの名前を決定してください。起動順序についてはシステム・ベンダのドキュメントを参照してください。
    1. Symfoware ServerまたはEnterprise Postgresのインスタンスの起動
    2. Linkexpressの起動
    3. レプリケーションサービスの開始

  • 自動停止は以下の順番になるようにシンボリックリンクの名前を決定してください。停止順序についてはシステム・ベンダのドキュメントを参照してください。
    1. レプリケーションサービスの停止
    2. Linkexpressの停止
    3. Symfoware ServerまたはEnterprise Postgresのインスタンスの停止

  • クラスタシステムで動作させる場合は、クラスタシステムにより起動停止が制御されるため、本機能を利用する必要はありません。

Solaris1.1.3.2.2 Solarisの場合

Solarisの場合に自動起動停止スクリプトで行う場合の手順を説明します。

セットアップ方法

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

  1. サービス名の命名
    同一サーバ内の他のレプリケーションサービスと重複しない名前を命名します。

  2. スクリプトを複写して権限を変更
    Linkexpress Replication optionのインストール先に格納されているスクリプトを、手順1.で命名したサービス名で複写します。
    以下、手順例です。

    $ cp /opt/FSUNlnkre/SAMPLE/SYMFOPGS/rc_lnkrep /etc/init.d/サービス名
    $ chmod 755 /etc/init.d/サービス名
  3. スクリプトを編集
    手順2.で複写したスクリプト内の変数を編集します。

    変数名

    編集内容

    LXREPCONFIG

    レプリケーションの動作環境ファイルのパス名を指定します。

    REPUSER

    レプリケーションサービスを開始するOSのユーザ名を指定します。編集しない場合にはrootとなります。

    LD_LIBRARY_PATH

    /opt/Symfoware_Server_Client_installdir/libをSymfoware Server ClientまたはEnterprise Postgres Clientのインストール先/libに変更します。

  4. シンボリックリンクの作成
    自動起動させるために、以下のディレクトリに対してシンボリックリンクを作成します。
    - /etc/rc2.d

    以下、手順例です。

    $ ln -s /etc/init.d/サービス名 /etc/rc2.d/S99サービス名

    また、自動停止させるために、以下のディレクトリに対してもシンボリックリンクを作成します。
    - /etc/rc0.d
    - /etc/rc1.d
    - /etc/rcS.d

    以下、手順例です。

    $ ln -s /etc/init.d/サービス名 /etc/rc0.d/K00サービス名

アンセットアップ方法

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

  1. レプリケーションサービスの停止
    1.2.2.3 レプリケーションサービスの開始と停止”を参照してください。

  2. シンボリックリンクの削除
    シンボリックリンクを以下のディレクトリから削除して、自動停止を解除します。
    - /etc/rc0.d
    - /etc/rc1.d
    - /etc/rcS.d

    以下、手順例です。

    $ rm /etc/rc0.d/K00サービス名

    また、シンボリックリンクを以下のディレクトリから削除して、自動起動を解除します。
    - /etc/rc2.d

    以下、手順例です。

    $ rm /etc/rc2.d/S99サービス名
  3. スクリプトの削除
    複写したスクリプトを削除します。
    以下、手順例です。

    $ rm /etc/init.d/サービス名

注意

  • 自動起動は以下の順番になるようにシンボリックリンクの名前を決定してください。起動順序についてはシステム・ベンダのドキュメントを参照してください。

    1. Symfoware ServerまたはEnterprise Postgresのインスタンス起動

    2. Linkexpressの起動

    3. レプリケーションサービスの開始

  • 自動停止は以下の順番になるようにシンボリックリンクの名前を決定してください。停止順序についてはシステム・ベンダのドキュメントを参照してください。

    1. レプリケーションサービスの停止

    2. Linkexpressの停止

    3. Symfoware ServerまたはEnterprise Postgresのインスタンスの停止

  • クラスタシステムで動作させる場合は、クラスタシステムにより起動停止が制御されるため、本機能を利用する必要はありません。

Windows1.1.3.3 Windowsサービスで行う場合

Windowsサービスによりレプリケーションサービスを開始および停止する場合の手順を以下に示します。

注意

Windowsシステム起動時にレプリケーションサービスを自動で開始する場合は、lxrepwinsrvコマンドで自動起動を指定して登録してください。Windowsサービスの登録については、“Windowsサービスの登録”を参照してください。

Windowsサービスの開始

以下の手順でWindowsサービスを起動してください。

  1. [サービス]ウインドウを表示する
    [スタート]メニューの[管理ツール]で、[サービス]をクリックします。

  2. Windowsサービスを起動する
    サービス名一覧の中から、起動したいレプリケーションサービスのWindowsサービス名を選択し、[サービスの開始]ボタンをクリックします。

Windowsサービスに登録されるレプリケーションサービス名は以下のようになります。

Linkexpress Replication option Service x (注)

注) xには動作環境ファイルのWINSERVICE_NAME_SUFFIXに指定した値が設定されます。WINSERVICE_NAME_SUFFIXの指定を省略した場合はLinkexpress Replication option Serviceとなります。

注意

[サービス]から起動した場合、起動処理の時間が125秒を経過するとサービスの仕様からエラーのダイアログが表示されます。
レプリケーションサービスの起動処理は正常に続行されますので、[OK]ボタンをクリックして、状態が「開始中」でなくなるまでお待ちください。
状態は[操作]メニューの[最新の情報に更新]を選択することによって最新の状態が表示されます。

Windowsサービスの停止

以下の手順でWindowsサービスを停止してください。

  1. [サービス]ウインドウを表示する
    [スタート]メニューの[管理ツール]で、[サービス]をクリックします。

  2. Windowsサービスを停止する
    サービス名一覧の中から、停止したいレプリケーションサービスのWindowsサービス名を選択し、[サービスの停止]ボタンをクリックします。

注意

[サービス]から停止した場合、停止処理の時間が125秒を経過するとサービスの仕様からエラーのダイアログが表示されます。
レプリケーションサービスの停止処理は正常に続行されますので、[OK]ボタンをクリックして、状態が「停止処理中」でなくなるまでお待ちください。
状態は[操作]メニューの[最新の情報に更新]を選択することによって最新の状態が表示されます。

1.1.3.4 差分ログ収集について

差分ログ収集とは、Linkexpress Replication optionのレプリケーションプロセスがトランザクションログテーブルから一定間隔で差分ログを収集するスケジュール処理です。差分ログ収集スケジュールは、動作環境ファイルで指定します。指定方法の詳細は“1.1.2.3.3 動作環境ファイルの作成”を参照してください。

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

注意

レプリケーションサービスの開始までに以下の準備が必要です。

  • 動作環境ファイルの準備
    詳細は“1.1.2.3.3 動作環境ファイルの作成”を参照してください。

  • Linkexpress Replication optionでは、以下のディスク領域を使用します。必要な容量を事前に準備してください。容量見積りの詳細は“システム設計ガイド”を参照してください。

    • 抽出定義管理ファイル

    • 差分ログファイル