vim風キーバインドを備えた、PostgreSQL、MySQL、SQLite、DuckDBなどに対応するターミナル(TUI)データベースクライアント。
dalibo/pg_activity
PostgreSQLサーバーのアクティビティ、セッション、実行中クエリをリアルタイムで監視する、top風のコマンドラインツール。
- スター
- 3,051
- フォーク
- 196
- 未解決の Issue
- 18
- 最終コミット
- 先月
これは何?
pg_activityは、topに似たターミナルインターフェースで、PostgreSQLサーバーの現在の動作を表示します。アクティブなバックエンドとそのクエリ、実行時間、CPU・メモリ使用量、読み書きの速度を一覧表示し、実行中・待機中・ブロック中のクエリを切り替えて確認できます。プロセステーブルの並べ替えや更新の一時停止、選択中のクエリのクリップボードへのコピーに加え、インターフェースからバックエンドの終了やクエリのキャンセルも行えます。
ローカル接続とリモート接続に対応し、標準的なlibpq接続文字列とオプションを利用できます。ヘッダーにはインスタンスとシステムの情報を表示でき、設定ファイルや、表示する列を切り替えるnarrow、wide、minimalなどの組み込みプロファイルも利用できます。データベース名によるフィルタリング、実行中クエリのCSVエクスポート、AWS RDSにも対応しています。
Linuxディストリビューションのパッケージ、psycopgを使ったPyPIからのインストール、またはソースからのインストールが可能です。Python 3.10以降に対応しています。
主な機能
- 01クエリ、実行時間、CPU・メモリ使用量、I/O速度を含むPostgreSQLバックエンドのリアルタイム一覧表示。
- 02実行中・待機中・ブロック中のクエリ表示を切り替え。
- 03インターフェースからバックエンドの終了やクエリのキャンセルが可能。
- 04表示する列を設定でき、組み込みの表示プロファイルも利用可能。
- 05データベース名によるフィルタリングと、実行中クエリのCSVエクスポート。
ユースケース
- 本番PostgreSQLサーバーで、遅いクエリやロック競合の原因を調査する。
- リモートのデータベースホストにSSH接続し、接続状況やI/Oの動きをリアルタイムで確認する。
- インシデント発生時に、ほかのセッションをブロックしているセッションを特定する。
クイックスタート
- 1
psycopg を使って PyPI からインストールする
python3 -m pip install "pg_activity[psycopg]" - 2
postgres ユーザーとしてローカルサーバーに接続して実行する
sudo -u postgres pg_activity -U postgres
使う前に知っておきたいこと
- すべてのデータを扱うには、スーパーユーザー権限を持つ PostgreSQL ユーザーが必要です。それ以外の場合は、機能が制限されたモードで動作します。
トピック
よくある質問
- pg_activity とは?
- PostgreSQLサーバーのアクティビティ、セッション、実行中クエリをリアルタイムで監視する、top風のコマンドラインツール。 pg_activityは、topに似たターミナルインターフェースで、PostgreSQLサーバーの現在の動作を表示します。アクティブなバックエンドとそのクエリ、実行時間、CPU・メモリ使用量、読み書きの速度を一覧表示し、実行中・待機中・ブロック中のクエリを切り替えて確認できます。プロセステーブルの並べ替えや更新の一時停止、選択中のクエリのクリップボードへのコピーに加え、インターフェースからバックエンドの終了やクエリのキャンセルも行えます。
- pg_activity は無料で使えますか?ライセンスは?
- pg_activity は PostgreSQL ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- pg_activity は今もメンテナンスされていますか?
- 半年以内に更新あり。pg_activity の最終コミットは 2026年9月21日 です。
- pg_activity は何に使えますか?
- 本番PostgreSQLサーバーで、遅いクエリやロック競合の原因を調査する。 リモートのデータベースホストにSSH接続し、接続状況やI/Oの動きをリアルタイムで確認する。 インシデント発生時に、ほかのセッションをブロックしているセッションを特定する。
- pg_activity のインストール方法は?
- psycopg を使って PyPI からインストールする: python3 -m pip install "pg_activity[psycopg]" postgres ユーザーとしてローカルサーバーに接続して実行する: sudo -u postgres pg_activity -U postgres
- pg_activity はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/dalibo/pg_activity
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
lazygitに着想を得た、複数のSQLデータベースに接続してクエリを実行できるキーボード操作主体のターミナルUI。
CPU、メモリ、ディスク、ネットワーク、プロセス、コンテナを監視するクロスプラットフォーム対応の端末・Webシステムモニター。REST APIとエクスポート機能も搭載。
GoAccessは、ターミナルやライブHTMLダッシュボードでトラフィック統計を確認できるリアルタイムWebログアナライザーです。
100以上のデータベースに対応する軽量なクロスプラットフォームDBクライアント。デスクトップ、Docker、CLI、AI SQLアシスタント、MCPサーバーを搭載。
複数のデータベースに対して順序付きのスキーマ変更を適用できる、CLIとライブラリを備えたGo製のマイグレーションツール。