memo.xight.org

日々のメモ

PostgreSQLの基本

ユーザ作成

# groupadd postgres
# useradd -m postgres -g postgres
# passwd postgres


初期設定

$ su - postgres
$ initdb
$ createdb





データベースを作成

$ createdb dbname


エンコードを指定してデータベースを作成

$ createdb -E Unicode dbname


データベースの削除

$ dropdb dbname


データベースに接続する

$ psql dbname


psqlを終了する

dbname=> \q





SQLのヘルプを表示する

dbname=> \h


内部コマンドのヘルプを表示する

dbname=> \?





データベース,テーブル,ユーザ一覧を取得

  - データベース一覧を取得

dbname=> SELECT * FROM pg_database;


  - テーブル一覧を取得

dbname=> SELECT * FROM pg_tables;


  - ユーザ一覧を取得

dbname=> SELECT * FROM pg_user;





バックアップ

  - バックアップ

$ pg_dump dbname > outfile


  - リストア

$ psql dbname < infile


  - データベースクラスタ全体をバックアップ

$ pgdumpall > outfile


  - データベースクラスタ全体をリストア

$ psql -f infile postgres


  - 大規模データベースの圧縮ダンプ

$ pg_dump dbname | gzip > filename.gz


  - 圧縮ダンプからのリストア

$ createdb dbname
$ gunzip -c filename.gz | psql dbname


Reference

PostgreSQL日本語ドキュメント
http://www.postgresql.jp/document/