suer TIL
eye catch
【PostgreSQL】log_min_duration_statementでスロークエリをログに出力する
log_min_duration_statementとは log_min_duration_statementは、指定した時間(ミリ秒)以上かかったSQL文をログに出力するPostgreSQLのパラメータである。 スロークエリを特定する際に使用する。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】シーケンスの現在値を変更する
setval関数でシーケンスの現在値を変更する PostgreSQLでシーケンスの現在値を変更するには、setval関数を使用する。 SELECT setval('シーケンス名', 値); たとえばSERIAL型のidカラムを持つitemsテーブルのシーケンスitems_id_seqを100に設定する場合は以下のように実行する。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】接続数の上限と現在の接続数を確認する
max_connectionsで接続数の上限を確認する PostgreSQLで同時接続数の上限を確認するには、max_connectionsパラメータをSHOWコマンドで確認する。 SHOW max_connections; max_connections ------------------ 100 (1 row) pg_settingsシステムカタログを参照しても同様に確認できる。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】ロール・権限一覧を確認する
\duコマンドでロール一覧を確認する PostgreSQLでロール一覧を確認するには、psqlコマンドラインツールの\duコマンドを使う。 \du List of roles Role name | Attributes ---------------+------------------------------------------------------------ app_admin | Create role, Create DB app_user | postgres | Superuser, Create role, Create DB, Replication, Bypass RLS readonly_user | Attributes列にはロールに付与された属性が表示される。 Superuser(スーパーユーザー)、Create role(ロール作成権限)、Create DB(データベース作成権限)などがあり、属性を持たないロールは空欄になる。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】pg_restoreの-jオプションで並列リストアする
-jオプションとは pg_dumpの-Fc(カスタムフォーマット)で取得したダンプは、pg_restoreの-j(--jobs)オプションで複数テーブルを並列にリストアできる。ダンプ内のテーブルは互いに独立したエントリとして格納されているため、-jに指定した数のプロセスで同時にデータロードやインデックス作成を進められる。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】pg_restoreの--tableオプションで特定のテーブルのみリストアする
–tableオプションとは pg_dumpの-Fc(カスタムフォーマット)で取得したダンプは、pg_restoreの--table(-t)オプションで特定のテーブルのみをリストアできる。プレインテキスト形式のダンプは先頭から順にSQL文を実行する仕組みのため、リストア時にテーブルを絞り込むことはできない。カスタムフォーマットであれば、全テーブルを含む1つのダンプファイルを作成しておき、リストアするタイミングで必要なテーブルだけを選べる。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】pg_dumpの-Fcオプションでカスタムフォーマットのバックアップを取得する
pg_dumpの-Fcオプションとは pg_dumpはデフォルトでSQL文からなるプレインテキスト形式のダンプを出力する。-Fc(--format=custom)オプションを指定すると、PostgreSQL独自のバイナリ形式であるカスタムフォーマットでダンプを出力できる。
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】TABLESAMPLEで大きなテーブルからランダムサンプリングする
TABLESAMPLEとは 大きなテーブルからランダムに一部の行だけを抽出したい場合、ORDER BY random() LIMITがよく使われるが、全行をスキャンしてソートするため大きなテーブルでは非常に遅くなる。TABLESAMPLEはテーブルの一部だけを読み取ってサンプリングする句であり、SELECTのFROM句に対して指定する。
DATABASE
2026-07-24 2026-07-25
eye catch
【PostgreSQL】ON CONFLICTでUPSERT(INSERT or UPDATE)を1文で書く
ON CONFLICTとは PostgreSQLのINSERT文にはON CONFLICT句があり、一意制約や主キー制約に違反した場合の挙動を指定できる。ON CONFLICT句を使うと、行が存在しなければINSERT、既に存在すればUPDATEするUPSERT処理を1つの文で記述できる。
DATABASE
2026-07-23 2026-07-23
eye catch
【PostgreSQL】pg_stat_progress_vacuumでVACUUMの進捗を確認する
pg_stat_progress_vacuumとは 大きなテーブルにVACUUMを実行すると、完了まで数分から数時間かかることがある。pg_stat_progress_vacuumは、現在実行中のVACUUMがどこまで進んでいるかを確認できるビューである。手動実行のVACUUMだけでなく、【PostgreSQL】autovacuumが実行されているか確認する で扱ったautovacuumの進捗も同じビューで確認できる。
DATABASE
2026-07-23 2026-07-23
  • ««
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »
  • »»
AUTHOR
author image
suer
ふつうのプログラマ
LATESTS
eye catch
【PostgreSQL】log_min_duration_statementでスロークエリをログに出力する
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】シーケンスの現在値を変更する
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】接続数の上限と現在の接続数を確認する
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】ロール・権限一覧を確認する
DATABASE
2026-07-25 2026-07-25
eye catch
【PostgreSQL】pg_restoreの-jオプションで並列リストアする
DATABASE
2026-07-25 2026-07-25
  • ホーム
  • お問い合わせ
  • プライバシーポリシー

© 2022 suer