VineLinuxパフォーマンスアッププロジェクト:0116
■Postgresqlを使ってみよう!■
Postgresqlはデータベースソフトの1つです。単体で動かしデータ整理に役立てることはもちろんのこと、phpやapache・namazu等とも連携させてデータベースサーバとして活躍させることもできます。今回は一番基本的なPostgresqlをインストールして起動・終了させる方法についてご紹介します。
まずはPostgresqlをインストールしましょう。VinePlusにありますので大体以下のパッケージを入れればOKです。
postgresql
postgresql-contrib
postgresql-devel
postgresql-docs
postgresql-jdbc
postgresql-libs
postgresql-pl
postgresql-python
postgresql-server
postgresql-tcl
インストール方法はapt-getコマンドまたはrpm コマンドです。
では実際に操作してみましょう。起動までの最も簡単な流れは以下の通りです。以下からはすべてターミナル上でコマンドを打つ要領で行ってください。
1.rootユーザで/etc/rc.d/init.d/postgresql startを行う
2.postmaster -S -D データディレクトリまでの絶対パス
3.createdb データベース名
4.psql -f 読み込みたいsqlファイルまでの絶対パス データベース名
●データディレクトリ
データディレクトリはpostgresqlを使用する際の作業用ディレクトリみたいなものです。お好きな場所に1つディレクトリを作成してください。ディレクトリ名は自由です。一番無難なのはホームディレクトリ以下かもしれませんね。
●データベース名
作成するデータベース名を必ず決めなければなりません。目的に沿って適切な名前をつけた方があとになっても分かりやすいことでしょう。
●sqlファイル
postgresqlを起動させるとターミナルのような対話型端末が起動します。そこで1行1行sql文を打ち込んでいってもよいのですが、非常に面倒な上間違いも起きやすくなります。
そこでemacsなどのテキストエディタであらかじめsqlファイルを作成してそれを起動時に読み込んで使うというスタイルをおすすめします。ここではsql文などの文法を説明することを省略しますが、sqlファイルは先ほど指定したデータディレクトリ内に保存しておくとよいでしょう。
※なおcreatedbはデータベース初期作成時のみ実行すればOKです。
終了処理の流れは以下の通りです。
5.pg_ctl stop -D データディレクトリまでの絶対パス
6.rootユーザで/etc/rc.d/init.d/postgresql stopを行う
作成したデータベースを破棄したい場合にはpg_ctlを行う前にdropdbを行います。ただしこれを行うと次回起動時にはもう1度データベースを作成しないといけませんのでよっぽどのことがない限り使用しないでください。
dropdb データベース名
「起動処理・終了処理をいちいち打つのは面倒」という方は/sbin/chkconfigコマンドでPostgresqlをLinux起動時に自動起動するように設定しておくと便利です。
/sbin/chkconfig postgresql on
この他にもPostgresqlでは様々なコマンドがあります。下のページで詳しく紹介されていますので参考にしてください。
NPO法人 日本PostgreSQLユーザ会 PostgreSQL日本語ドキュメント: http://www.postgresql.jp/document/