Postgres pg_cron Job Scheduling

solutionamardba
Towards Dev
Published in
1 min readJan 17, 2023

--

o run a bash script as a job in Postgres, you can use the pg_cron extension. pg_cron is a simple and lightweight cron-based job scheduler for Postgres which allows you to schedule scripts and SQL commands to run at specified intervals.

Here are the steps to run a bash script as a job in Postgres using pg_cron:

  1. First, install the pg_cron extension by running the following command in your Postgres environment:
CREATE EXTENSION IF NOT EXISTS pg_cron;

2. Next, create a new job by running the following command, replacing [script_path] with the path to your bash script and [schedule] with the desired schedule for the job:

SELECT cron.schedule('[schedule]', 'bash [script_path]');

3. Finally, start the scheduler by running the following command:

SELECT pg_cron.start();

4.You can also check the status of the jobs by running

SELECT * FROM pg_cron.pg_cron_schedule;

It’s recommended to test the script separately before scheduling it and also to monitor the progress and resource usage of the job.

You can also choose to use pgAgent which is a Job Scheduler for PostgreSQL which is available as an open-source tool that allows you to schedule and automate various tasks such as running scripts, backups and more.

--

--