Mac OS X で PostgreSQL を使ってみよう (2)

Mac OS X で PostgreSQL を使ってみよう (2)

3. PostgreSQL を立ち上げてみる


順調にインストール作業は終了しました。さて実際に Mac OS X 上で PostgreSQL を立ち上げてみましょう。
Applications folder with PostgreSQL inside
Mac の「アプリケーション」フォルダを見てみると、既に「PostgreSQL」、「PostgreSQL 8.3」と言ったフォルダが作成されています。「PostgreSQL  8.3」フォルダは PostgreSQL 本体のインストール時に、「PostgreSQL」フォルダはスタックビルダで phpPgAdmin をインストールした時に作られたようです。

それでは「PostgreSQL 8.3」の「SQL Shell (psql)」を立ち上げてみましょう。

ダブルクリックすると自動的に「ターミナル」が立ち上がり、以下のようなメッセージが表示されます。
/Library/PostgreSQL/8.3/scripts/runpsql.sh; exit
sakai-macbook:~ sakai$ /Library/PostgreSQL/8.3/scripts/runpsql.sh; exit
Server [localhost]: 
コネクトするサーバはほぼデフォルトのままで大丈夫なはずです。つまりは何の入力もしないでエンターを押していくだけで問題ありません。

※もしワン・クリックインストーラの最初の設定で、何か値を変えているようでしたら、ここでその設定値を入力する必要があるかもしれません。あるいはその値が初期値として表示されているかもしれません。

ただしパスワードは、インストールの最初に設定したものを入力してください。
Server [localhost]:
Database [postgres]:
Port [5432]:
Username [postgres]:
Password for user postgres:
Welcome to psql 8.3.7, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

postgres=#
「Server」「Database」「Port」「Username」は、何も入力せずデフォルトのままでエンターキーを、「Password」はインストール時に設定したものを入力してエンターキーを押すと、問題なく psql でコネクトできたようです。起動が確認できたら、今はとりあえずは「\q」と入力していったん終了させてしまいましょう。
postgres=# \q
logout

[プロセスが完了しました]
Finder にもどり、今度は、phpPgAdmin ダブルクリックしてを立ち上げてみましょう。
phpPgAdmin just started
ブラウザ経由で、「http://localhost:8080/phpPgAdmin/」が立ち上がります。この 8080 は phpPgAdmin のインストール時に設定したポート番号と同じですね。セレクトを「日本語」に変えると、全体の表記が日本語に変わります。それでは左部メニューの「PostgreSQL」を開いてみます。ログインを要求されますので、ユーザー名は postgres 、パスワードはインストール時に設定したものを入力してログインします。
phpPgAdmin with database "postgres"

ログインできました。それでは phpPgAdmin で新しい db を作成してみましょう。「データベースを作成する」をクリックすると、作成画面になります。チュートリアルの最初で作成する「mydb」という名前のデータベースを、エンコード「UTF8」で作成してみましょう。

phpPgAdmin creating "mydb"
項目を入力し「作成」ボタンをクリックすると、問題なく作成できました。それでは、psql でも同等に mydb にコネクトできるかどうか試してみましょう。

/アプリケーション/PostgreSQL 8.3/SQL Shell (psql) を立ち上げて、ターミナルで、先ほどの方にコネクトしてみます。このとき、前回とは違い、Database: では「mydb」と入力してみましょう。もちろんパスワードも必要です。
sakai-macbook:~ sakai$ /Library/PostgreSQL/8.3/scripts/runpsql.sh; exit
Server [localhost]:
Database [postgres]: mydb
Port [5433]:
Username [postgres]:
Password for user postgres:
Welcome to psql 8.3.7, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

mydb=#
うまくコネクトできました。せっかくなので、チュートリアルの第2章に出てくるテーブル作成もしてみましょう。
CREATE TABLE weather (
    city            varchar(80),
    temp_lo         int,
    temp_hi         int,
    prcp            real,
    date            date
);
psql で上記の文を入力し、エンターキーを押します。「\d weather」と入力して、テーブルの定義を表示させてみると、
mydb=# \d weather
           Table "public.weather"
 Column  |         Type          | Modifiers
---------+-----------------------+-----------
 city    | character varying(80) |
 temp_lo | integer               |
 temp_hi | integer               |
 prcp    | real                  |
 date    | date                  |

mydb=#
ちゃんとテーブルが定義されているようようですね。これでチュートリアルもできるようになりました。phpPgAdmin と psql を交互に操作してみて、同じデータベースを参照していることを確認してみてください。