#45 PostgreSQLへのデータベース移行手順(Windows 7 Professional SP1 64bit)

icon QWER was written at Nov 10, 2017 11:58 AM
  Edit(Sign in)
  Stock
  Answer survey   Answer survey

  TOC

はじめに

knowledgeのデータベースを組込みデータベースから、PostgreSQLへ移行した際の手順を記載します。
参考) http://ts0818.hatenablog.com/entry/2017/02/11/210104

knowledgeの構築環境

OS : Windows 7 Professional SP1 64bit
JAVA : JDK1.8.0_131
Tomcat : Tomcat 9.0.0.M20
knowledge : v1.11.0 pre4
詳細は #12 をご参照ください。

PostgreSQLのセットアップ

PostgreSQLのダウンロード

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
(ここでは、PostgreSQL9.6.5 Windows 64bit版をダウンロードしました。)

PostgreSQLのインストール

ダウンロードした「postgresql-9.6.5-1-windows-x64.exe」をダブルクリックします。

Nextをクリック

001.png

インストール先の選択

ここでは、デフォルト設定としました。
002.png

PostgreSQLデータベースの保存先の選択

デフォルトでは、「C:\Program Files\PostgreSQL\9.6\data」ですが、ここでは、knowledgeに関するデータを一箇所に纏めるため、専用ドライブ(Eドライブ)に「postgre_data」というフォルダを作成しました。
003.png

パスワードの設定

Postgresのデフォルトユーザーのパスワードを指定します。
004.png

ポートの設定

ポート番号を設定します。デフォルトの「5432」としました。
005.png

ロケールの設定

「Japanese, Japan」を選択。
(「C」の方が文字列比較やソートのパフォーマンス良いという情報あり。)
参考) http://www.stdio.jp/entry/postgresql/install-windows-7
006.png

インストール開始

007.png
008.png

インストール完了・スタックビルダ

インストールが完了すると、スタックビルダ(追加ソフトウェアのインストールツール)の起動選択ができます。
今回は不要なので、チェックを外しました。
「Finish」をクリックして完了です。
010.png

環境変数の設定

環境変数を設定します。
これを行うとコマンドプロンプトからpsqlコマンドを使用出来るようになります。

環境変数

[コントロールパネル]-[システム]-[システムの詳細]-[詳細設定タブ]-[環境変数]まで進みます。

PostgreSRLのインストール先パスのコピー

「C:\Program Files\PostgreSQL\9.6\bin」までのパスをコピーします。
014.png

「Path」の追加

①手動で行う場合

  • 「Path」を選択し、「編集」をクリックします。
    017.png

  • コピーした「C:\Program Files\PostgreSQL\9.6\bin」を追加します。(;区切り)
    020.png

②コマンドプロンプト(管理者)を使用する場合

  • コマンドプロンプトを起動し、下記のコマンドを実行します。
  • (現在のシステム環境変数「Path」をユーザー環境変数「PathBackup」にバックアップします。)
    setx PathBackup -k "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path"
  • 成功: 指定した値は保存されました。」と表示されれば正常に保存されています。
    020.png

  • 上記の値を反映するためコマンドプロンプトを一度終了します。

  • コマンドプロンプトを管理者権限で起動し、下記のコマンドを実行します。
    setx /M Path "%PathBackup%;C:\Program Files\PostgreSQL\9.6\bin"

  • 「成功: 指定した値は保存されました。」と表示されればPathの追加は完了です。
    022.png

psqlコマンドの実行テスト

  • コマンドプロンプトを起動します。
  • cd C:\を実行し、C:\に移動します。
  • psql --versionを実行し、インストールしたPostgreSQLのバージョンが表示されれば設定が正常に管用しています。
    023.png

PostgreSQLへの接続

  • psql -U postgresコマンドを実行します。
  • パスワードはインストール時に設定したものを入力します。(タイプしても何も表示されませんが入力されています)
  • postgres=#と表示されると、正常に接続されています。
    025.png
  • ¥lコマンドを実行すると、デフォルトデータベースの一覧が表示されます。
    026.png

knowledgeデータベースの移行

:warning: 事前に、[knowledge]-[システム管理]-[組み込みデータベースのバックアップと復元]からKnowledgeのバックアップを行って下さい。

データベースの接続先変更

  • [knowledge]-[システム管理]-[データベースの接続先変更]をクリックします。
    027.png

  • 下記のように設定します。(knowledgeとPostgreSQLを同じWindows Serverにインストールした場合)

  • URLの「localhost」は構築環境に合わせてください。(IPアドレスを設定している場合はIPアドレスに変更する)
URLjdbc:postgresql://localhost:5432/postgres
userpostgres
passwordPostgreSQLのインストール時に設定したもの
schemapublic
max connection5
auto commitfalse

034.png

  • 設定を確認したら「保存」ボタンをクリックします。 設定が有効な場合には「Information 現在、カスタム設定が有効になっています」と表示されます。
    035.png

  • 「組み込みDBで保存していたデータをカスタム設定のDBにコピー」をクリックします。
    036.png

  • データのコピーが開始します。
    037.png

以上で、PostgreSQLへのデータベース移行手順は終了です。


 Add Comment