ページの先頭行へ戻る
Symfoware Server V12.0.0  導入ガイド(サーバ編)
FUJITSU Software

4.5.2 インスタンスの自動起動・停止の設定

データベースサーバのOSの起動・停止に合わせて、インスタンスを自動的に起動・停止することができます。

以下に示す手順に従って、インスタンスの自動起動・停止の設定を行ってください。

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

  1. インスタンス管理者のOSユーザーアカウントの設定

    インスタンス管理者のOSユーザーアカウントでログインした場合に、インスタンスの起動に必要な環境変数を設定するようにします。この設定は、以降で説明する“su -”コマンドの実行時に必要になります。

  2. シェルスクリプトの作成

    第1引数を読み取ってインスタンスの起動/停止を行うシェルスクリプトを作成します。

    第1引数を読み取り、“start”が指定された場合は起動、“stop”が指定された場合は停止を行うようにします。
    なお、“su -”コマンドによりインスタンス管理者として起動・停止を行う必要があります。

  3. シェルスクリプトの複写とアクセス権の設定

    OSのスーパーユーザーで、手順2で作成したシェルスクリプトを/etc/rc.d/init.d配下に複写し、アクセス権を設定して登録します。

    以下は、自動起動停止スクリプトを“symfo_inst1”として作成した場合の例です。

    # cp symfo_inst1 /etc/rc.d/init.d/
    # chmod 755 /etc/rc.d/init.d/symfo_inst1
  4. 自動起動・停止の登録と有効化

    OSのスーパーユーザーで、chkconfigコマンドを使って登録と有効化をします。

    “chkconfig --add”で登録し、“chkconfig --level”でランレベルの設定と有効化を行います。

    # chkconfig --add symfo_inst1
    # chkconfig --level 25 symfo_inst1 on
インスタンスの自動起動・停止シェルスクリプトの例
#!/bin/sh
# chkconfig: 2345 85 15
# description: Symfoware Server Open start / stop script
##########################################################################

SYMDATA="/database/inst1"
SYMUSER=symfo
SYMLOG="$SYMDATA/serverlog"

LOCKFILE=/var/lock/subsys/symfo_inst1

case "$1" in
    start)
        su - $SYMUSER -c "pg_ctl start -D '$SYMDATA' -w " >$SYMLOG 2>&1
        if [ $? -eq 0 ];then
            touch $LOCKFILE
        fi
        ;;
    stop)
        su - $SYMUSER -c "pg_ctl stop -D '$SYMDATA' -m fast" >$SYMLOG 2>&1
        if [ $? -eq 0 ];then
            rm -f $LOCKFILE
        fi
        ;;
    restart)
        su - $SYMUSER -c "pg_ctl restart -D '$SYMDATA' -m fast" >$SYMLOG 2>&1
        if [ $? -eq 0 ];then
            touch $LOCKFILE
        fi
        ;;
    reload)
        su - $SYMUSER -c "pg_ctl reload -D '$SYMDATA'" >$SYMLOG 2>&1
        ;;
    status)
        su - $SYMUSER -c "pg_ctl status -D '$SYMDATA'"
        ;;
    *)	
        echo $"Usage: $0 {start|stop|restart|reload|status}"
        exit 2
        ;;
esac