2017-04-26 72 views
0

有没有一种工具可以让我安排Postgresql查询定期运行而不需要管理员?我正在寻找可以在Mac上运行的解决方案。使用Postgresql为非管理员用户安排作业

我只对数据库的某些模式拥有写入权限(插入,更新,删除),但希望计划每天在这些模式之一上运行的查询。

pgAgent是明显的选择,但我认为我需要成为一名管理员才能使用/安装它。

+0

可以通过cron或launchd完成调度吗?虽然不推荐使用cron,但仍可以在mac os上运行。推出是推荐的方法 –

回答

1

有没有一种工具可以让我安排Postgresql查询定期运行而不用管理员?我正在寻找可以在Mac上运行的解决方案。

使用pg_cron

INSERT INTO cron.job (schedule, command, nodename, nodeport, database, username) 
VALUES ('0 4 * * *', 'VACUUM', 'worker-node-1', 5432, 'postgres', 'marco'); 

这需要你安装扩展为管理员。您可以运行crontab -e,假设它受OSX支持。如果您想以常规用户身份设置一个任务来运行(即使是非数据库任务)。