【发布时间】:2023-03-12 10:43:01
【问题描述】:
我正在为操作系统窗口 7 使用 PostgreSQL 版本 9.3。
在 postgresql PgAdmin III 中显示选项作业时遇到问题。
这是我尝试过的图片:
设置 pgAgent Jobs 检查后,我重新启动服务器和服务,然后:
有什么问题?
【问题讨论】:
标签: postgresql pgadmin pgagent
我正在为操作系统窗口 7 使用 PostgreSQL 版本 9.3。
在 postgresql PgAdmin III 中显示选项作业时遇到问题。
这是我尝试过的图片:
设置 pgAgent Jobs 检查后,我重新启动服务器和服务,然后:
有什么问题?
【问题讨论】:
标签: postgresql pgadmin pgagent
似乎您在 PostgreSQL 9.3 中总共有 9 个数据库。从 9 开始,只有一个是维护数据库。所以您必须通过右键单击服务器来创建新服务器,并且您必须将维护数据库作为您执行 pgAgent.sql 文件的数据库。
之后只需启动该服务器,您将获得作业节点。
希望这会有所帮助:)
【讨论】:
我在一个论坛上找到了答案,下面应该怎么做:
根据代码,“pgAgent Jobs”节点显示,如果 在选项对话框中检查选项,如果有表 pga_job 在维护数据库的模式 pgagent 中。此外,用户 用于连接的必须具有 pgagent 上的 USAGE 权限 架构。
我已向维护数据库添加了新架构,并在架构中添加了没有任何列的 pga_job 表,并且 Jobs 节点变得可见,但现在出现了错误:
ERROR: relation "pgagent.pga_jobclass" does not exist
LINE 1: ...s AS joblastresult FROM pgagent.pga_job j JOIN pgagent.pg...
出现此错误是因为创建架构并不能完全解决问题。之后,我在 pgagent 架构中创建了 4 个表:
1.
CREATE TABLE pgagent.pga_job
(
jclid integer NOT NULL,
jobjclid integer NOT NULL,
jobagentid integer NOT NULL,
jlgstatus integer NOT NULL,
jobid integer NOT NULL,
jobname character varying(255) NOT NULL
)
WITH (
OIDS=FALSE
);
ALTER TABLE pgagent.pga_job
OWNER TO postgres;
2.
CREATE TABLE pgagent.pga_jobagent
(
jagpid integer NOT NULL,
jlgstatus integer NOT NULL
)
WITH (
OIDS=FALSE
);
ALTER TABLE pgagent.pga_jobagent
OWNER TO postgres;
3.
CREATE TABLE pgagent.pga_jobclass
(
jclid integer NOT NULL,
jlgstatus integer NOT NULL
)
WITH (
OIDS=FALSE
);
ALTER TABLE pgagent.pga_jobclass
OWNER TO postgres;
4.
CREATE TABLE pgagent.pga_joblog
(
joblogid integer NOT NULL,
jlgstatus integer NOT NULL,
jlgjobid integer NOT NULL,
jlgid integer NOT NULL
)
WITH (
OIDS=FALSE
);
ALTER TABLE pgagent.pga_joblog
OWNER TO postgres;
问题解决了。
【讨论】: