前準備ができたんで、次はデータベースを作ってみる。
ポスグレにはデータベースをいじる各種コマンドもインストールされてる。 それらを使うにはユーザ postgres になっていじる。
まず、PostgreSQL のデーモン(だと思う) postmaster が起動されてることを確認。
起動されてなかったら起動。postgres になって ps で確認してみる。これを見ると、postmaster -S -i で動いてる。postgres$ ps -ax | grep postmaster 7010 ? S 0:00 postmaster -S -i
-S オプションはバックグラウンドで動かせるらしい。
-i オプションはネットからの接続を許す。-i がないとローカル内だけのアクセスしかできないんで Web から接続させるには必須オプション。
postmaster を起動・再起動させるには pg_ctl コマンドを使うとうれしい。 詳細は pg_ctl --help を見るべし。
次にデータベースを作る。 mydb という名前のデータベースを作成してみる。エラーが無いんでうまくいったらしい。postgres$ createdb mydb CREATE DATABASE
本当にできたか確認するには psql コマンドを使う。 psql は PostgreSQL に接続するターミナル・クライアント・ソフトらしい。 psql から SQL 文を発行してデータベースをいじる。
現在登録されているデータベース一覧を表示させるには -l オプションを使う。mydb があるね。 他に template0 なんかもある。これは何か不明やけど気にしないことにする。postgres$ psql -l List of databases Name | Owner -----------+---------- mydb | postgres template0 | postgres template1 | postgres (3 rows)
作っていきなり消すんかい!!とりあえず実験ということで。本当に消えたか確認。postgres$ dropdb mydb DROP DATABASEちゃんと消えとるね。postgres$ psql -l List of databases Name | Owner -----------+---------- template0 | postgres template1 | postgres (2 rows)
psql を使って mydb データベースに接続する。
消したんでもう一回 mydb を作って psql で接続。ここからは psql ターミナルでの作業となる。postgres$ createdb mydb CREATE DATABASE postgres$ psql mydb Welcome to psql, the PostgreSQL interactive terminal. Type: \copyright for distribution terms \h for help with SQL commands \? for help on internal slash commands \g or terminate with semicolon to execute query \q to quit mydb=#
まずは、名前と電話番号とメールがある住所録テーブルでも作ってみる。 以下の SQL 文を入力。んでちゃんとできたか確認。mydb=# CREATE TABLE address (name varchar(50), tel varchar(50), email varchar(50));うまくいったようや。mydb=# \d address Table "address" Column | Type | Modifiers --------+-----------------------+----------- name | character varying(50) | tel | character varying(50) | email | character varying(50) |
作っていきなり消すんかい!!とりあえず実験ということで。('02.11.21)消されたかどうか確認。mydb=# DROP TABLE address;ねえぞ。って言ってきたんでうまくいった。今回はこれでおしまい。mydb=# \d address Did not find any relation named "address".mydb=# \q