Pleskパワーパックを契約せずにPostgreSQLを使う
自分でインストールすればいいので、ソースから入れます。環境は使えるねっとのVPS Linuxです。
1.PostgreSQLを入れる
PostgreSQLのマニュアルにソースコードからインストールってのがそのままやれば入ります。
develを入れとかないとコンパイルとか出来ません。入ってなかったらいれるか、gccとか必要なのを入れてください。
2.postgresユーザーの作成と環境設定
PostgreSQLユーザアカウント見ながらユーザーを作成。その後、インストール後の設定作業にあるのをやっとくと、便利です。PGDATAも設定するとなお便利。
PATH=/usr/local/pgsql/bin
export PATH
PGDATA=/usr/local/pgsql/data
export PGDATA
.bash_profileを編集すると思いますが、Parallels Power Panelのファイルマネージャーから編集すると失敗します。(なぜか、改行コードがCR+LFになっちゃうので)
ダウンロードして書き換えるか、SSHでやってください。ダウンロードしてアップしなおす場合、日本語のフォルダ(デスクトップとか)からアップしようとすると、これも失敗します。
3.データベースクラスタの作成、サーバー起動
データベースクラスタの作成、そのままでできます。先にSSHかファイルマネージャーから/usr/local/pgsql/dataを作って、postgresへ所有者を変更しときます。
それで、僕はこんな感じで初期化します。引数の意味はヘルプに。
initdb -W -A md5 -E UTF8 –no-locale
ログを置く為に、例えば、/var/log/postgres/ を作ってpostgresへ所有者を変更しときます。で、
pg_ctl start -l /var/log/postgres/postgresql.log
で起動します。
4.自動起動設定
CentOS4にPostgreSQL8.1.0をインストールする。の10にあります。参考に設定します。
上と一緒のようにするにはログのところちょっと直します。
PGLOG=”/var/log/postgres/postgresql.log”
試しに再起動してみて動くかどうか確認します。postgresユーザーで、
pg_ctl status
とすると、
pg_ctl: server is running (PID: 10152)
/usr/local/pgsql/bin/postgres “-D” “/usr/local/pgsql/data”
な感じになるはず。
5.PHPで使えようにする
rootユーザーでphp-develをインストールします。
yum install php-devel
で、今入ってるのと同じバージョンのPHPのソースをPHP: Downloadsから取ってきます。
wget http://jp.php.net/get/php-5.3.6.tar.bz2/from/this/mirror
bunzip2 php-5.3.6.tar.bz2
tar xf php-5.3.6.tar
ソースの中のpgsqlへ移動します。
cd php-5.3.6/ext/pgsql/
後は、PHPインストール後のPostgresモジュールインストール方法(Linux)|IT資料館(覚え書き)に。(6のパスは、php-5.3.6/ext/pdo_pgsqlです)
モジュールは、
/usr/lib64/php/modules/
に出来ます。7.のphp.iniファイルの編集の変わりに/etc/php.d/にファイルを作成します。
pdo_pgsql.ini ファイル、中身↓
extension=pdo_pgsql.so
pgsql.ini ファイル、中身↓
extension=pgsql.so
で、サービス再起動
service httpd restart
phpinfoを確認します。
試行錯誤
最初、yumで出来ると思ってインストールしてみたんですが、あちこちいじくりまわしても、phpinfoのpgsqlのPostgreSQL(libpq) Versionが8.1.23のままで、9.0.3に出来ませんでした。なので、こんなやり方になってしまいました。ホントはもっと簡単に出来るのかもしれません。

