ラベル PostgreSQL の投稿を表示しています。 すべての投稿を表示
ラベル PostgreSQL の投稿を表示しています。 すべての投稿を表示

2010年5月5日水曜日

PostgreSQL コマンドメモ

■ 手続き言語 plpgsql を登録する。
# su - postgres
-bash-3.2$ createlang -d testdb plpgsql
-bash-3.2$ exit
■ データベースをバックアップする
$ pg_dump -d testdb > output.dmp
■ データベースを復元する
$ dropdb testdb
$ createdb testdb
$ psql -d testdb < input.dmp
■ テーブルをバックアップする
$ pg_dump -d testdb -t testtable > output.dmp
■ テーブルを復元する
$ psql testdb
testdb=# drop table testtable;
testdb=# \q
$ psql -d testdb < input.dmp
■ クエリのファイルを実行する。
$ psql -d testdb -f filename.sql
■ 文字コードの変更(Windows)
postgres=# \encaoding sjis

PostgreSQL の設定

■ 設定ファイル
/var/lib/pgsql/data/pg_hba.conf
/var/lib/pgsql/data/postgresql.conf

■ ログファイル
/var/lib/pgsql/data/pg_log/postgresql-曜日.log

■ データベースファイルの実体
/var/lib/pgsql/data/base/

PostgreSQL メモ

■ TOP n を使う。
SELECT TOP 10 * FROM testdb => SELECT * FROM testdb LIMIT 10

■ SQL をチューニングする。
EXPLAIN SELECT * FROM ... でクエリプランが表示される。
Seq Scan on ... と表示される部分で遅くなっている可能性あり。

■ 数値型文字列型に変換し、文字列を連結する。
SELECT
 'teststring' || CAST(col1 AS char)
FROM
 testdb
■ psql を使う。
\? psql コマンド一覧
\h クエリの一覧
\l データベース一覧
\c dbname データベースへの接続
\z テーブル一覧