====== PostgreSQLインストール方法 ======
====== 概要 ======
[[http://www.postgresql.org/|PostgreSQL]]はオープンソースのオブジェクト関係データベース管理システムです。
本手順ではPostgreSQLの最新版8.4.0(2009/9/3現在)を元に説明しています。
バージョンにより内容が異なる場合がありますがご了承ください。
\\
===== 前提条件 =====
* GNU make
* gzip,tar
ZoneExpress環境ではこの前提条件を満たしています。
\\
===== インストール =====
/var/tmpを作業ディレクトリとします。
$ cd /var/tmp
* ファイルの入手
[[http://www.postgresql.jp/PostgreSQL|Postgreユーザ会]]のダウンロードページの最新版ソースをダウンロードします。
$ wget ftp://ftp2.jp.postgresql.org/pub/postgresql/source/v8.4.0/postgresql-8.4.0.tar.gz
\\
* ファイルの解凍
$ tar zxvf postgresql-8.4.0.tar.gz
\\
* 不要ファイルの削除
不要となったアーカイブファイルを削除します。
$ rm postgresql-8.4.0.tar.gz
\\
* インストール
作成したディレクトリへ移動します。
$ cd postgresql-8.4.0
configureを実行します。
$ ./configrue --without-readline
オプションの--without-readlineについては不要ライブラリの為外しています。
続けてmakeを実行します。
$ make
インストールの実行
$ sudo make install
下記出力が確認出来れば完了です。
PostgreSQL installation complete.
PostgreSQL用にユーザpostgres/グループpostgresが作成されています。
\\
* postgresユーザのパスワードを設定する
$ sudo passwd postgres
<任意のパスワード>
postgresユーザでDB生成等のほかユーザ管理を行えます。
後述するユーザ作成のコマンドでrootユーザ等にも同等の権限を持たせることができます。
\\
===== コマンドパスの変更 =====
PostgreSQL関連のコマンドは全て/usr/local/pgsql/bin下にインストールされています。
デフォルトでは環境変数のコマンドパスに/usr/local/pgsql/binが含まれていないため追記する必要があります
[[etc:env]]を参考に、パスを追記してください。
\\
===== データベースの初期化 =====
データベースの保存ディレクトリを作成し、初期化を実行します。
postgresユーザにsuします。
$ su - postgres
データベース初期化コマンドを実行します。
$ initdb -D /usr/local/pgsql/data
下記の様な出力が確認出来れば完了です。
$ initdb -D /usr/local/pgsql/data
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
....
Success. You can now start the database server using:
postmaster -D /usr/local/pgsql/data
or
pg_ctl -D /usr/local/pgsql/data -l logfile start
\\
===== SMFへの登録 =====
[[smf:smf|SMF]]へ登録するため、マニフェストファイルを作成します。
$ sudo vi /var/svc/manifest/application/postgresql.xml
以下の内容を貼り付けます。
作成したマニフェストファイルをSMFへ登録します。
$ sudo svccfg import /var/svc/manifest/application/postgresql.xml
SMFへ登録された事を確認します。
$ svcs -a | grep postgresql
disabled 16:04:54 svc:/application/postgresql:postmaster
\\
===== PostgreSQLサーバ起動/停止 =====
* 起動コマンド
$ sudo svcadm enable postgresql
出力例
$ svcs -a | grep postgresql
online 16:20:16 svc:/application/postgresql:postgresql
* 停止コマンド
$ sudo svcadm disable postgresql
出力例
$ svcs -a | grep postgresql
disabled 16:20:53 svc:/application/postgresql:postgresql
* 再起動コマンド
$ sudo svcadm refresh postgresql
\\
====== 参考リンク ======
[[http://www.postgresql.org/|PostgreSQL公式サイト]]
[[http://www.postgresql.jp/|日本PostgreSQLユーザ会]]