PostgreSQL > 基本的な使い方

更新日 2014-12-08
広告
PostgreSQLの基本的な使い方を紹介します。 以下は、UbuntuにインストールしたPostgreSQLを例に説明します。

バージョンの確認

バージョンを確認するには psql コマンドを使います。
~$ psql --version
psql (PostgreSQL) 8.4.11
今回の例で使う PostgreSQL は、バージョン 8.4.11 です。

起動と停止

PostgreSQLの起動や停止には、/etc/init.d/postgresql スクリプトを利用します。以下に例を示します。
$ /etc/init.d/postgresql start    # 起動
 * Starting PostgreSQL 8.4 database server                               [ OK ]
$ /etc/init.d/postgresql stop     # 停止
 * Stopping PostgreSQL 8.4 database server                               [ OK ]
$ /etc/init.d/postgresql restart  # 再起動
 * Restarting PostgreSQL 8.4 database server                             [ OK ] 
$ /etc/init.d/postgresql status   # 現在の状態を出力
Running clusters: 8.4/main 

スクリプトの実行時には、ユーザpostgres (もしくは、ユーザroot)になる必要があります。

最近のUbuntuだと、以下のようにserviceコマンド経由で起動・停止するほうがお行儀がよいですね。

$ service postgresql start    # 起動
$ /etc/init.d/postgresql stop     # 停止
$ /etc/init.d/postgresql restart  # 再起動

データベースの操作

データベースを作成するには createdb コマンドを使います。 このコマンドは、PostgreSQLをインストールする際に、一緒にインストールされるコマンドです。 ユーザpostgresになって、実行します。
~$ createdb testdb
データベースを削除するには、dropdb コマンドを使います。
~$ dropdb testdb
データベースへログインするには、psql コマンドを使います。 作成したデータベース名を指定してログインします。 ログイン後はテーブルを作ることができます。
~$ psql testdb
psql (8.4.11)
Type "help" for help.
PostgreSQLサーバとは別のマシンでpsqlを実行する場合は、-hオプションで、サーバのアドレスを指定します。 また、ユーザ名は -U オプションで、データベース名は -d オプションで指定します。
$ psql -h db.server.addr -U postgres -d testdb
作成済みのデータベースを一覧表示するには、'\l' を実行します。
testdb=# \l
                                 List of databases
   Name    |  Owner   | Encoding | Collation  |   Ctype    |   Access privileges   
-----------+----------+----------+------------+------------+-----------------------
 postgres  | postgres | UTF8     | ja_JP.utf8 | ja_JP.utf8 | 
 template0 | postgres | UTF8     | ja_JP.utf8 | ja_JP.utf8 | =c/postgres
                                                           : postgres=CTc/postgres
 template1 | postgres | UTF8     | ja_JP.utf8 | ja_JP.utf8 | =c/postgres
                                                           : postgres=CTc/postgres
 testdb    | postgres | UTF8     | ja_JP.utf8 | ja_JP.utf8 | 
(4 rows)
ログアウトは、バックスラッシュと q です。もしくは、'Ctrl+D'です。
testdb=# \q
-cはコマンドを指定するオプションです。 わざわざログインしなくても、以下のようにクエリを実行できます。
$ psql -h db.server.addr -U postgres -d testdb -c '\d'
ファイルに記述したSQLクエリ群を実行するには、-fオプションを使います。
$ psql -f query_file testdb
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system