2014年9月12日金曜日

AWS EC2 CentOS6.5 に PostgreSQL8.4を インストールしてみた (その1)

これまでの流れ:
1:急にiDempiere に興味を持った。
2:iDmpiere を使うためにAWS(Amazon Web Services) アカウントを作成することにした。
3:AWS にEC2 インスタンスを作成し、 CentOS をセットアップすることにした。
4: SSHの設定をして外部からアクセスできる様にしてみた。
5:コマンドラインでは使いにくいのでデスクトップ環境を作ってみた。

ここまででようやく入り口だ。

次は、、、、iDempiere で使うデータベースだ。PostgreSQLを使ってみる。
(後にPostgresSQLバージョンの関係で、以下やり直しを決意した。よって参考にはなりませぬ。ごめんなさい。)

----------------------     既にここから作業やり直し、一応履歴的に残します。。--------------


# yum -y install postgresql

なんかあっさり終わりすぎて不安になる。(これではPostgreSQLのクライアントしか入っていなかった。)

そうそう、考えてみれば前回までの作業でデスクトップ使える様にしていたので、そっちで見てみると。

System -> Administration -> Add/Remove Software でインストール可能なアプリケーションを検索、インストールすることが出来る。




って、あれ?肝心の PostgreSQL server がインストールされいない?
(アプリケーション名の左のチェックが入っていない)

postgresql の後ろに * (アスタリスク)付けて、関係するものごっそり入れてみる。
# yum -y install postgresql*

ちゃんとインストールされていた。(余計なものまで入ったかもしれないが、気にしないことにする。)


GUIの管理ツールをインストールする
pgadmin3 というPostgreSQLの管理ツールをインストールす、する、、、ない。みあたらない。


でもよくわからないのでpgadmin3 はここで中断して先へ進むことにする。
無理にCentoOSにセットアップせずにWindowsからの接続したいところだけど、PostgreSQLはデフォルトでは自マシン内しか接続許可がなく、外部からは設定が必要。もちろん外部からの接続は普通のことだが、今回 iDempiereは同一サーバーに置くつもりなのに、管理ツールの為だけに設定するのはなんかくやしい。また後ほど考えることとする。

とりあえず インストールしたpostgresql 起動
実はここら辺からセットアップしたデスクトップ使って楽をしようと思っていたのだが、昔あったサービスの設定ツールが見当たらない。なのでもうしばらくコマンドライン使う。

# service postgresql start

/var/lib/pgsql/data is missing. Use "service postgresql initdb" to initialize the cluster first.
                                                           [FAILED]

初期化せよとのこと。そりゃそうか。

# service postgresql initdb
Initializing database:                                     [  OK  ]
# service postgresql start
Starting postgresql service:                               [  OK  ]


PostgreSQLはインストールするとユーザー作成するので確認。
# id postgres
uid=26(postgres) gid=26(postgres) groups=26(postgres)

postgresユーザーのパスワード設定

# passwd postgres
Changing password for user postgres.
New password:
BAD PASSWORD: it is WAY too short
BAD PASSWORD: is too simple
Retype new password:
passwd: all authentication tokens updated successfully.

相変わらず短いパスワードで押し通す。

postgres ユーザーで実行できるか確認
# su - postgres
-bash-4.1$ psql
psql (8.4.20)
Type "help" for help.

DB ユーザーを確認(まだ作成していないのでユーザーなし)
postgres=# \d
No relations found.

終了
postgres-# \q

postgres ユーザーからログアウト
-bash-4.1$ exit
logout
#

一応動いているようだ。
しかし、設定ファイルが行方不明。
/etc ディレクトリに postgresql があるはずなのだが、、、

あった、こんなところに。
# pwd
/var/lib/pgsql/data
# ls -la
total 88
drwx------. 12 postgres postgres  4096 Sep 12 05:10 .
drwx------.  4 postgres postgres  4096 Sep 12 05:18 ..
drwx------.  5 postgres postgres  4096 Sep 12 05:10 base
drwx------.  2 postgres postgres  4096 Sep 12 05:10 global
drwx------.  2 postgres postgres  4096 Sep 12 05:09 pg_clog
-rw-------.  1 postgres postgres  3411 Sep 12 05:09 pg_hba.conf
-rw-------.  1 postgres postgres  1631 Sep 12 05:09 pg_ident.conf
drwx------.  2 postgres postgres  4096 Sep 12 05:10 pg_log
drwx------.  4 postgres postgres  4096 Sep 12 05:09 pg_multixact
drwx------.  2 postgres postgres  4096 Sep 12 05:50 pg_stat_tmp
drwx------.  2 postgres postgres  4096 Sep 12 05:09 pg_subtrans
drwx------.  2 postgres postgres  4096 Sep 12 05:09 pg_tblspc
drwx------.  2 postgres postgres  4096 Sep 12 05:09 pg_twophase
-rw-------.  1 postgres postgres     4 Sep 12 05:09 PG_VERSION
drwx------.  3 postgres postgres  4096 Sep 12 05:09 pg_xlog
-rw-------.  1 postgres postgres 16886 Sep 12 05:09 postgresql.conf
-rw-------.  1 postgres postgres    57 Sep 12 05:10 postmaster.opts
-rw-------.  1 postgres postgres    45 Sep 12 05:10 postmaster.pid
[root@ip-172-31-7-11 data]#

こんな感じ

運用を前提に設定する場合、セキュリティを考慮していろいろと設定が必要です。
今回はiDempiere 評価が目的なので、後ほど必要に応じて修正していくことにします。

次に進むため、ここであれこれネットの情報をググりまくる。
すると PostgresSQLは 8.4 ではいかんとの情報を発見。
本当かどうか分かりませんが、先人の知恵は素直にお借りすることにしてこの作業はご破算。一度PostgresSQLは アンインストールして再度挑戦することにします。

# yum remove postgresql*



ああ、時間かかる。。


ちなみに Unix/Linux の vi エディタにどうしても馴染めない人はデスクトップにエディタがあるので、必要に応じて使うと良いでしょう。
ただ権限の問題で、ターミナル(端末)から su でルートになってから geditとキーインするとwindows のエクスプローラー風の画面でファイルを探し、編集もなんとなくイメージ通りの操作ができます。



0 件のコメント:

コメントを投稿