ここでは、Denbun POP V3.3P R10.0のデータをPostgreSQL13.3からPostgreSQL16.3へ移行する手順をご説明します。
前提条件
本手順は以下を前提に説明いたします。
DenbunPOPのバージョン:V3.3P R10.0
PostgreSQL13.3のインストール先:「C:\Program Files\PostgreSQL\13」
PostgreSQL16.3のインストール先:「C:\Program Files\PostgreSQL\16」
バックアップ先:「C:\denbun\backup」
|
|
- 1.事前準備
-
スケジューラーを起動されている場合、スケジューラーを停止してください。
[停止コマンド例]
> taskkill /F /IM dnpscheduler.exe
Webサーバーを停止してください。
[Webサーバー(IIS)停止コマンド例]
> net stop w3svc
- 2.PostgreSQL13.3のDenbunのデータをバックアップ【重要】
-
Windows付属のコマンドプロンプトを起動し、PostgreSQLのインストール先にある「bin」フォルダに移動します。
次に、以下のコマンドにてデータベースファイルをダンプします。
[データベースバックアップコマンド例]
> C:
> cd C:\Program Files\PostgreSQL\13\bin
> pg_dump.exe -b -Fc -U postgres dnpwmldb > C:\denbun\backup\dnpwmldb.backup
※「パスワード」の入力要求が表示された場合は”postgres”ユーザーのパスワードを入力します。
(DenbunのインストーラーでPostgreSQLをインストールした場合は、パスワードは”postgres”となります。)
※「pg_dump」コマンド実行中に警告・エラーメッセージが表示されていないことをご確認ください。
また「pg_dump」コマンド実行後「dnpwmldb.backup」ファイルが1バイト以上のサイズで作成されていることをご確認ください。
- 3.PostgreSQL13.3をアンインストール
-
Windowsのコントロールパネルより「PostgreSQL 13.3」をアンインストールしてください。
※コントロール パネル>すべてのコントロール パネル項目>プログラムと機能からアンインストールできます。
※「PostgreSQL 13.3」のみをアンインストールしてください。
「Denbun POP xxxxx for PostgreSQL 13.3」などはアンインストールしないでください。
- 4.PostgreSQL16.3をインストール
-
- 5.データをリストア
-
Windows付属のコマンドプロンプトを起動し、PostgreSQL16.3のインストール先にある「bin」フォルダに移動します。
次に、以下のコマンドにてデータべースファイルをリストアします。
[データベース作成コマンド例]
> C:
> cd C:\Program Files\PostgreSQL\16\bin
> psql.exe -h localhost -U postgres
※「パスワード」の入力要求が表示された場合は”postgres”ユーザーのパスワードを入力します。
> postgres=# CREATE ROLE dnpwml LOGIN PASSWORD 'dnpwml' NOINHERIT VALID UNTIL 'infinity';
> postgres=# CREATE DATABASE dnpwmldb WITH OWNER=dnpwml TEMPLATE=template0 ENCODING='UTF8' LC_COLLATE='C' LC_CTYPE='C';
> postgres=# \q
[データベースリストアコマンド例]
> pg_restore.exe -U postgres -Fc -d dnpwmldb C:\denbun\backup\dnpwmldb.backup
※「パスワード」の入力要求が表示された場合は”postgres”ユーザーのパスワードを入力します。
- 6.Webサーバーおよびスケジューラーを再開
-
Webサーバーを開始してください。
[Webサーバー(IIS)開始コマンド例]
> net start w3svc
スケジューラーの起動につきましては
こちらをご参照ください。
- 7.完了
-
以上で移行作業は完了です。