データベース多重化運用をやめて、単体のサーバで行う運用に変更する場合の手順を示します。
運用の変更は、データベースサーバでの操作と裁定サーバでの操作が必要です。
裁定サーバでの操作は、裁定サーバを利用して自動縮退を行う運用を行っている場合にのみ、実施してください。
データベースサーバでの操作
インスタンスを停止するサーバの決定と切り替え
データベース多重化運用の対象から外して、インスタンスを停止するサーバを決定します。
インスタンスを停止するサーバがプライマリサーバである場合は、mc_ctlコマンドをswitchモードで実行してスタンバイサーバをプライマリサーバに切り替えてください。
切り替えが完了したあとのスタンバイサーバが、インスタンスを停止するサーバとなります。
インスタンスを停止するサーバがスタンバイサーバである場合は、切り替え操作は必要ありません。
例)
$ mc_ctl switch -M /mcdir/inst1
Mirroring Controllerおよびインスタンスの停止とファイル資源の削除
手順1で決定したサーバにおいて、mc_ctlコマンドをstopモードで実行して、Mirroring Controllerとインスタンスを停止します。
例)
$ mc_ctl stop -M /mcdir/inst1
そのあと、以下のファイル資源を削除してください。
データ格納先ディレクトリ
Mirroring Controller管理ディレクトリ
例)
$ rm -rf /database/inst1 $ rm -rf /mcdir/inst1
参照
データを安全に削除するには、“運用ガイド”の“セキュリティに関する注意事項”を参照してください。
アプリケーション業務の停止
プライマリサーバに接続するアプリケーション業務を停止します。
プライマリサーバのMirroring Controllerおよびインスタンスの停止
プライマリサーバでmc_ctlコマンドをstopモードで実行します。
例)
$ mc_ctl stop -M /mcdir/inst1
プライマリサーバのインスタンスに対して設定されているデータベース多重化運用の設定を削除します。
各パラメータおよび資源について、postgresql.confファイルを以下のように対処します。また、recovery.confファイルは削除するか、ファイル名をrecovery.doneなどに変更してください。Mirroring Controller管理ディレクトリのファイル資源は削除してください。
ファイル | パラメータ | 対処内容 |
---|---|---|
postgresql.confファイル | wal_level | データベース多重化運用として設定する前の値に戻す、または指定値である“replica”または“logical”を削除します。(注) |
max_wal_senders | データベース多重化運用として設定する前の値に戻します。 | |
synchronous_standby_names | 削除します。(注) | |
wal_log_hints | ||
wal_sender_timeout | ||
listen_addresses | データベース多重化運用として設定する前の値に戻します。 | |
max_connections | ||
superuser_reserved_connections | ||
hot_standby | 削除します。(注) | |
synchronous_commit | データベース多重化運用として設定する前の値に戻します。 |
注) データベース多重化運用を行う前から設定を変更していない場合には、対処不要です。
また、バックアップ運用を行っている場合は、以下の資源を削除してください。
データベース多重化運用中に取得したMirroring Controller管理ディレクトリのバックアップデータ
データベース多重化運用中に取得したインスタンスのバックアップデータ
これらの対処を行ったあと、単体運用を開始するときには、バックアップデータを採取するようにしてください。
参照
データを安全に削除するには、“運用ガイド”の“セキュリティに関する注意事項”を参照してください。
バックアップ運用の詳細は、“2.14 バックアップ運用”を参照してください。
postgresql.confファイルのパラメータの詳細は、“付録A パラメータ”を参照してください。
ポイント
上記の手順において、単体のサーバとなるプライマリサーバのpostgresql.confファイルの変更手順が、設定ファイルの再読み込みで可能な場合には、アプリケーション業務を停止することなく運用を変更することができます。
その場合、プライマリサーバの停止は、mc_ctlコマンドのstopモードに--mc-onlyオプションを指定して、Mirroring Controllerのみを停止してください。
裁定サーバでの操作
Linuxの場合
mc_arbコマンドをstopモードで実行して、Mirroring Controller裁定プロセスを停止します。
例)
$ mc_arb stop -M /mcarb_dir/arbiter1
Mirroring Controller裁定プロセスの管理ディレクトリを削除します。
例)
$ rm -rf /mcarb_dir/arbiter1
Windowsの場合
mc_arbコマンドをstopモードで実行して、Mirroring Controller裁定プロセスを停止します。
例)
> mc_arb stop -M D:\mcarb_dir\arbiter1
WindowsサービスからMirroring Controller裁定プロセスの登録解除
mc_arbコマンドをunregisterモードで実行して、WindowsサービスからMirroring Controller裁定プロセスの登録解除を行います。
例)
> mc_arb unregister -M D:\mcarb_dir\arbiter1
イベントログに関する登録の削除
“2.2.2.1 イベントログにエラーログを出力する場合の準備(Windowsの場合)”でイベントログへの出力を行っている場合には、インスタンスごとに登録したイベントソース名を削除します。
例)
> regsvr32 /u /i:"Mirroring Controller arbtier1" "c:\Program Files\Fujitsu\fsepv<x>assistant64\lib\mcarbevent.dll"
“<x>”は製品のバージョンを示します。
Mirroring Controller裁定プロセスの管理ディレクトリを削除します。
例)
> rmdir /S /Q D:\mcarb_dir\arbiter1