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 まで。