Postgres Cron

Da Emigar.
Versione del 22 mar 2022 alle 14:17 di WikiSysop (discussione | contributi) (Creata pagina con "per poter schedulare jon all'nterno di postgres, è necessario installare un componente aggiuntivo: apt install postgresql-14-cron successivamente va configurato: alter sys...")
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Jump to navigation Jump to search

per poter schedulare jon all'nterno di postgres, è necessario installare un componente aggiuntivo:

apt install postgresql-14-cron

successivamente va configurato:

alter system set shared_preload_libraries = 'pg_cron'; -- serve riavvio per poter eseguire gli altri comandi di configurazione -- NON SERVE: SELECT pg_reload_conf(); -- NON FUNZIONA: load 'pg_cron'; alter system set cron.database_name = 'postgres'; create extension pg_cron; -- grant usage on schema cron to utente01;


per utilizzarlo, ci sono le funzioni:


select * from cron.job;

-- Delete old data on Saturday at 3:30am (GMT) SELECT cron.schedule('30 3 * * 6', $$DELETE FROM events WHERE event_time < now() - interval '1 week'$$);

-- Vacuum every day at 10:00am (GMT) SELECT cron.schedule('0 10 * * *', 'VACUUM');

-- Unschedule all tasks SELECT cron.unschedule(jobid) FROM cron.job;