今月の日経Linux に先月号からの特集で
RHEL(Red Hat Enterprise Linux) でサーバー構築
が載っていましたので
実践しています
ちなみに、今月号は
です
通常はOSが有償であまり使うことはないのですが
AmazonEC2 で時間単位で借りれるため、これを使って
構築していきます
今回は PostgreSQL のインストールからです
ただし SELinux は停止しておきましょう
これが原因で初期化失敗がおきるリスクがあります
まず、最初に停止しているインスタンスを起動します
ちなみに、時間単位で課金されるため、稼働時間が
1分でも1時間と変わりませんので
注意しましょう
yum install postgresql-server postgresql-docs
で導入
次に
service postgresql initdb
で
DB初期化
chkconfig postgresql on
で
次回から起動時にスタートするように設定
(これをやらないと、またコマンドでサービス立ち上げが必要になります)
service postgresql start
で postgresql をスタート
次にユーザ作成します
su – postgres
でユーザを root から postgres へ切り替え
psql -c “ALTER USER postgres encrypted password ‘任意のパスワード'”
でパスワードを設定します
psql -c “CREATE USER rails encrypted password ‘任意のパスワード’ createdb”
で
rails ロールを作成、DB作成権限を与えます
次に、認証方式の設定ファイルを変更します
vim /var/lib/pgsql/data/pg_hba.conf
でファイルを開き
最下行付近にある設定を変更します
# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all ident # IPv4 local connections: host all all 127.0.0.1/32 ident # IPv6 local connections: host all all ::1/128 ident
これを
# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5
というように
最後の
METHOD を md5 に変更します
ちなみに、md5はパスワード認証という意味です
ここまで完了したら、設定反映のため、サービスの再起動をします
一度
su –
で管理者権限 root へ戻り
service postgresql restart
を実行します
postgres ユーザだと、エラーになります
接続確認のため
psql -l -U rails
を実行し、パスワードを入力してDB一覧が出れば成功です