PostgreSQL 8.1 の基本操作

PostgreSQL 8.1 をインストールした後に行う設定と、PostgreSQL で使用する基本的な機能を紹介します。
PostgreSQL の管理ユーザーの設定やデーターベースの作成、ログイン方法などを紹介します。

管理ユーザーのパスワードの設定

PostgreSQL をインストールした直後は PostgreSQL の管理ユーザーである postgres のパスワードが設定されていないのでパスワードを設定します。

# su - postgres
$ psql -c "alter user postgres with password '**********'"
ALTER ROLE

$ exit

ユーザーの登録と削除

PostgreSQL をインストールした直後はスーパーユーザーしか存在しません。
普段 PostgreSQL 内でデーターベースにアクセスするための一般ユーザーを作成します。
PostgreSQL のユーザーは createuser コマンドを使って作成します。

# su - postgres
$ createuser -S -R -D -P koko
Enter password for new role: **********新しく設定するパスワードを入力
Enter it again: **********確認のためにもう一度パスワードを入力
CREATE ROLE

-- createuser オプションの解説

  1. スーパーユーザーになれません。
    • -S(--no-superuser)
  2. 新しいロールの作成を禁止します。
    • -R(--no-createrole)
  3. データーベースの作成を禁止します。
    • -D(--no-createdb)
  4. パスワードのプロンプトを表示します。
    • -P(--pwprompt)

ユーザーが作成されたかどうかを確認するために、登録されているユーザーの一覧を表示します。

$ psql -c "select usename from pg_user"
 usename
----------
 postgres
 koko
(2 rows)

ユーザーを削除する場合は以下のように実行します。

$ dropuser koko
DROP ROLE

$ exit

データーベースの作成と削除

新しいデーターベースを作成する場合は以下のように実行します。

# su - postgres
$ createdb -O koko testdb
CREATE DATABASE

-- createuser オプションの解説

  1. データーベースの所有者となるデーターベースユーザーを指定します。
    • -O(--owner)

作成したデーターベースは以下のコマンドで確認することができます。

$ psql -l
        List of databases
   Name    |  Owner   | Encoding
-----------+----------+----------
 postgres  | postgres | UTF8
 template0 | postgres | UTF8
 template1 | postgres | UTF8
 testdb    | koko     | UTF8
(4 rows)

データーベースを削除する場合は以下のように実行します。

$ dropdb testdb
DROP DATABASE

$ exit