2014年10月31日にオープンソースのERP iDempiere(アイデンピエレ)のバージョンが2.1に上がりました。そこで、Ubuntu14.4 LTSにiDempiere2.1の環境を構築しようとしたところ、Ubuntu14.4 LTSのリポジトリに登録されているPostgreSQLはバージョンが9.3であり、iDempiere2.1がサポートしているPostgreSQL9.2とは合致しないため、ここにUbuntu14.4 LTSにPostgreSQL9.2をインストールする方法を記載しておきたいと思います。
【補足説明】JDBCのドライバーのバージョンが相違すると思わぬエラーに…
iDempiere2.1のPostgreSQLのJDBCドライバーのバージョンは9.2であり、このままUbuntu14.4LTSのリポジトリに登録されているPostgreSQL9.3をインストールし、iDempiereを利用すると、JDBCドライバーのバージョンが異なるため、思わぬエラーになる可能性があります。
エラーが表示されるなどの、わかりやすいエラーなら良いのですがJDBCドライバーのミスマッチは、DBから取得するデータが意図するものと微妙に異なるなど発見しずらいケースがあります。
そのような思わぬエラーに遭遇しないように、JDBCのドライバーと使用するとデータベースのバージョンは適切な組み合わせにするようにして下さい。
【補足説明】PostgreSQL9.3はiDempiere3.0から
Ubuntu14.4LTSのリポジトリに登録されているPostgreSQL9.3は、iDempiere3.0より対応される予定です(2014年11月現在)。
Step1:リポジトリにリストを追加する
"/etc/apt/sources.list.d/" に "pgdg.list" というファイルを作成します。
$ cd /etc/apt/sources.list.d/
$ sudo touch pgdg.list
"pgdg.list" のファイルに次のように記載します。
次のコマンドを使用して"pgdg.list"ファイルを編集できるようにし、nanoエディタで開きます。
$ sudo chmod a+rwx etc
$ nano pgdg.list
"pgdg.list"ファイルをnanoエディタで開いたら、次のように記載します。
deb http://apt.postgresql.org/pub/repos/apt/ codename-pgdg main
"codename"は次のコマンドで確認して適切なコードネームに書き換えて下さい。
$ lsb_release -c
Ubuntu14.04LTSのコードネームは、"trusty" ですので通常は次のようにpgdg.listファイルに書き込めば大丈夫だと思います。
deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main
【補足説明】/etc/apt/sources.list.d ディレクトリ
/etc/apt/sources.list.d ディレクトリは、個別ファイルで source.list エン トリを追加する方法を提供します。フォーマットは、通常の sources.list ファイルと同じです。ファイル名は、.list で終わる必要があり、文字 (a-z と A-Z)、数字 (0-9)、アンダースコア (_)、ハイフン (-)、ピリオド (.) の みでできていなければなりません。
※引用
Step2:リポジトリの公開Keyをインポートする
$ wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
$ sudo apt-get update
Step3:PostgreSQL-9.2をインストールする
$ sudo apt-get install postgresql-9.2
インストールが完了したら、次のコマンドでpostgreSQLのバージョンを確認して下さい。
$ psql --version