おっさんエンジニアの備忘録

とりあえず、忘れてもいいようにやってみたことを書いています。

postgresコマンドの基礎

サクッと基本的なところをまとめてみる

なんか最近よく使うところを中心に備忘録のためにまとめているので、役に立たない人には全く立たないかも。

接続する

psql -U postgres -d dbname

psql

メタコマンド

-- ヘルプ
¥h

-- データベース一覧
\l

-- オブジェクトを表示
\d

--終了
\q

主なディレクトリ構成

65.1. データベースファイルのレイアウト

設定ファイルを確認する

select name, setting, unit, short_desc from pg_settings;
select name, setting, unit, short_desc from pg_settings where name like '%shared%';

サイズを測る

-- database
SELECT datname, pg_size_pretty(pg_database_size(datname)) FROM pg_database;
-- block size
SHOW block_size;
-- table size (toastは除く)
SELECT relname, relfilenode, pg_size_pretty(relpages::bigint * 8 * 1024) as size, reltuples as rows from pg_class where relname='table_name' and relkind = 'r';
-- index size
SELECT relname, relfilenode, pg_size_pretty(relpages::bigint * 8 * 1024) as size, reltuples as rows from pg_class where relname='index_name' and relkind = 'i';

ファイルで確認

-- dababase
du -sh ./data/base/*