更改作业中的job_class属性时出错

时间:2018-02-20 08:15:10

标签: oracle jobs job-scheduling

我创建了一个job_class,其日志记录级别为FULL。 同样的SQL语法是:

BEGIN
  dbms_scheduler.create_job_class(job_class_name => 'full_job_class',
                                  comments       => 'Job class having logging level as full.',
                                  logging_level  => dbms_scheduler.logging_full);
END;

现在我正在尝试更改数据库中所有列出的JOB的属性,以将其job_class属性设置为新创建的job_class。

相同的SQL语法:

DECLARE
  vs_statement VARCHAR2(100);

  CURSOR c1 IS
    SELECT '''' || owner || '.' || job_name || '''' as job_name
    FROM dba_scheduler_jobs d
    WHERE owner NOT IN ('SYS', 'DBSNMP', 'ORACLE_OCM', 'SYSTEM');
BEGIN
  FOR rec IN c1 LOOP
       execute immediate ('BEGIN dbms_scheduler.set_attribute(NAME => '||rec.job_name||', attribute => ''JOB_CLASS'', VALUE => ''FULL_JOB_CLASS''); END;');
  END LOOP;
END;

但是在运行此代码的过程中,我现在正在接受以下错误:

ORA-27470: failed to re-enable "WEB"."REFRESH_PERFORMANCE" after making requested change
ORA-27476: "SYS"."FULL_JOB_CLASS" does not exist
ORA-06512: at "SYS.DBMS_ISCHED", line 4648
ORA-06512: at "SYS.DBMS_SCHEDULER", line 3052
ORA-06512: at line 1

但是,当我一次执行一个更改作业属性以设置其job_class时,我就不会收到任何错误。

1 个答案:

答案 0 :(得分:0)

请确保您为尝试进行更改的架构授予siteId对象特权(作为SYS)。

server {
    root /usr/share/nginx/html;
    try_files $uri $uri/ index.html;
    error_log /var/log/nginx/angular4_error.log;
    access_log /var/log/nginx/angular4_access.log;
}