データベースを利用するCGIプログラミング
---- データベースPostgreSQLによるデータベースの作成 ----
PostgreSQLのデータベースは、次の3つの階層で構築されています。
- データベースの初期化
-
PostgreSQLのデータベースは、一つのディレクトリに作成されます。
この場所は、環境変数PGDATAで指定します。このディレクトリを作成することを「データベースの初期化」と
言います。初期化が終ったディレクトリをデータベースインスタンスと呼びます。
初期化は、以下のコマンドによって実施されます。
$ initdb
このコマンドを実行する前に、ホームディレクトリの.cshrc あるいは .bashrcに、以下のような環境変数を設定しておく必要があります。
setenv PATH "$PATH":/usr/local/pgsql/bin
setenv POSTGRES_HOME /usr/local/pgsql
setenv PGLIB $POSTGRES_HOME/lib
setenv PGDATA $POSTGRES_HOME/data
setenv LD_LIBRARY_PATH "$PGLIB"
このコマンドを起動したユーザがそのデータベース領域の所有者となります。
ひとつのデータベースインスタンスには、以下のものが含まれます。
- データベースインスタンス管理情報
- データベースディレクトリ"base"
- データベースユーザの登録
-
PostgreSQLを利用するためには、ユーザ登録しておく必要があります。
登録は、createuserコマンドを用いて次のように行ないます。
$ createuser ユーザ名
このコマンドを実行すると、「ユーザID」、「データベースを作る権限」、「データベースユーザを登録する権限」を質問してきます。通常は、次のように設定します。
- 「ユーザID」:ディフォルトのまま
- 「データベースを作る権限」:y(yes)
- 「データベースユーザを登録する権限」:n(no)
- データベース
-
データベースの実体は、上記データベースインスタンス内のbaseディレクトリ以下に作成されます。
データベースを作成するには、createdbコマンドを使って、以下のようにします。
$ createdb データベース名
通常、上記のデータベース定義まではデータベース管理者により行なわれます。
江木鶴子 : egi@ube-c.ac.jp