0

我是 pgAgent 的新手,并试图设置一个每 5 分钟导出一次文件的作业(仅用于测试;一旦我掌握了语法,它将分散到许多作业中)。当我在查询编辑器中运行以下测试代码时,它可以正常工作,但是 pgAgent 似乎不喜欢它。对我需要更改的内容有什么帮助吗?

DO $$
DECLARE ssql varchar := 'COPY (SELECT * FROM public.users LIMIT 10) TO ''C:\Program Files\PostgreSQL\11\pgExport' || TO_CHAR(NOW(),'YYYYMMDDHH24MI') || '.csv'' WITH CSV DELIMITER '','' HEADER;';

BEGIN
    EXECUTE ssql;
END; $$

就正在发生的事情而言,我找不到任何类型的错误;相反,当我手动运行作业或让计划运行时,文件不会出现。

4

1 回答 1

1

所以结果证明不是语法问题,而是权限问题。如果有人感兴趣,请在此处找到答案(无法连接到数据库 - Postgres Job Scheduling 已发布(基于 Windows 的机器)) - 基本上必须将作业设置为“远程”服务器(即使在本地运行)并提供与 localhost 的连接字符串。

于 2019-03-15T13:02:47.343 回答