pgAgent
は、PostgreSQL のジョブスケジューラとして利用できるツールで、データベース上のジョブ(タスク)の自動化を実現します。定期的に実行するバックアップやデータのメンテナンス作業、バッチ処理などを簡単にスケジュールすることができます。この記事では、Windows 上で pgAgent
をインストールして設定し、ジョブを管理する手順を説明します。
前提条件
- PostgreSQL が Windows 環境にインストールされていること。
pgAdmin
がインストールされていること(pgAgent
はpgAdmin
を通じて設定します)。
pgAgent のインストール
pgAgent
は PostgreSQL の拡張機能であり、デフォルトでインストールされているわけではありません。pgAgent
を使うために、まずインストールが必要です。
stackbuilder使ってpgAgentをインストール
1.PostgreSQLのインストール先のbinフォルダ(C:\Program Files\PostgreSQL\16\bin)からstackbuilder.exeをクリックして、stackbuilderを起動します。
2.インストール先のPostgreSQLサーバーを選択して次へ
3.インストールしたいアプリケーションからpgAgentをチェックして次へ
4.ダウンロードディレクトリを選択して次へ
5.ダウンロード正常に終わったら次へ
6.pgAgentのセットアップウィザードを起動されます
7.Upgrade Modeをチェックして次へ
8.サーバーの情報を入力して次へ
9.pgAgentサービス実行するWindowsアカウント情報を入力して次へ
10.インストールの準備完了、次へインストールを開始します
11.インストール完了
PostgreSQL データベース内で pgAgent のセットアップ
1.pgAdmin
を開き、PostgreSQL
に接続します。
2. postgres
データベースを選択し、以下の SQL コマンドを実行して pgAgent
のスキーマをデータベースに作成します:
CREATE EXTENSION pgagent;
3.スキーマとテーブルの確認
pgAgent
のスキーマとテーブルが正しく作成されているかを確認します。以下の SQL コマンドを実行して、pgAgent
に関連するテーブルが作成されているか確認できます。
\dn
これで、pgagent
というスキーマが表示される
List of installed extensions
Name | Version | Schema | Description
-----------+---------+------------+-----------------------------------------
adminpack | 2.1 | pg_catalog | administrative functions for PostgreSQL
pgagent | 4.2 | pgagent | A PostgreSQL job scheduler
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
次に、以下のコマンドでテーブルの一覧を確認します。
\dt pgagent.*
れにより、pgagent.pga_job
などのテーブルが表示されれば、正しく作成されています。
List of relations
Schema | Name | Type | Owner
---------+----------------+-------+----------
pgagent | pga_exception | table | postgres
pgagent | pga_job | table | postgres
pgagent | pga_jobagent | table | postgres
pgagent | pga_jobclass | table | postgres
pgagent | pga_joblog | table | postgres
pgagent | pga_jobstep | table | postgres
pgagent | pga_jobsteplog | table | postgres
pgagent | pga_schedule | table | postgres
pgAgent サービスの起動
コマンドプロンプト管理者として起動します、次のコマンドを使って pgAgent
を起動します:
net start pgagent-pg16
pgAdmin ナビゲーションツリーpgAgent ジョブ確認
pgAdminナビゲーションツリーを再読み込みして、pgAgent ジョブセクション表示されること確認。これでpgAdmin
でジョブを作成して管理することができます。
まとめ
pgAgent
は、Windows 上で PostgreSQL のジョブスケジューリングを行うための強力なツールです。定期的なバックアップやデータのメンテナンス、バッチ処理などの自動化を簡単に設定できます。本記事では、Windows 環境での pgAgent
のインストール方法について解説しました。次回はpgAgentを使って、PostgreSQL のジョブをスケジュールする方法を、具体的なジョブの例を交えながら解説します。
コメント