我是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; $$
就发生的事情我找不到任何类型的错误;而是当我手动运行作业或让时间表运行时文件不会出现。
答案 0 :(得分:0)
因此,事实证明这不是语法问题,而是权限问题。如果有人感兴趣,请在这里(couldn't get a connection to the database - Postgres Job Scheduling issued (Windows based machine)找到答案-基本上必须将作业设置为“远程”服务器(即使在本地运行),并为本地主机提供连接字符串。