问题标签 [dbms-job]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2930 浏览

sql - 如何在 oracle 中创建“单例”计划作业?

这可能只是我想知道如何做到这一点的词汇:

计划每 5 分钟定期运行一次的作业,但要跟踪它永远不会同时运行两个实例,即如果先前的运行时间超过 5 分钟,则下一个实例将被推迟或跳过。

实现这一目标的最简单/最优雅的方法是什么?

0 投票
2 回答
19237 浏览

database - 更改 JOB_QUEUE_PROCESSES

将 Oracle DB 上的 JOB_QUEUE_PROCESSES 更改为 0 是否也会阻止 Oracle 作业被调度?

我在http://download-west.oracle.com/docs/cd/A97630_01/server.920/a96521/jobq.htm中找到了一些关于它的信息,主要是以下内容:

JOB_QUEUE_PROCESSES 初始化参数控制协调器作业队列进程是否由实例启动。如果此参数设置为 0,则在数据库启动时不启动协调器作业队列进程,因此不执行作业队列作业。JOB_QUEUE_PROCESSES 初始化参数还指定可以在一个实例上同时运行的最大 Jnnn 进程数。可以指定的最大进程数为 1000。

但是,我不确定“协调员工作队列”在总体方案中代表什么。

非常感谢您的及时回复。

0 投票
2 回答
5060 浏览

oracle - 杀死 Oracle 作业。10g特定

我们正在使用在 DBMS_JOB 之上运行的作业调度系统。它使用主作业来创建一次性作业。我们为所有客户端部署相同的作业集,但可以指定哪些作业应仅在某些客户端上运行。

我们偶尔会遇到由作业挂起运行的进程的问题。造成这种情况的主要原因是 UTL_TCP 在得到预期响应时没有超时。我希望能够杀死这些工作,以便它们可以再次运行。

我正在考虑创建一项新工作,以杀死任何运行时间超过特定时间的一次性工作。

我们被 Oracle 10g 困住了一段时间,所以我仅限于它可以做什么。

有一篇文章似乎涵盖了大部分内容

http://it.toolbox.com/blogs/database-solutions/killing-the-oracle-dbms_job-6498

我有一种感觉,这不会涵盖所有可能发生的情况,包括:

  1. 我们可以作为几个不同的用户运行作业,并且用户只能中断/删除他们创建的作业。我相信我可以使用 DBMS_IJOB 来解决这个问题,但我需要让 DBA 让我执行它。
  2. 我们有 Oracle RAC 系统。我了解 10g 将 ALTER SYSTEM KILL SESSION 限制为在当前实例上终止会话。我可以安排所有作业在同一个实例上运行,但我还没有尝试过。

还有什么我应该考虑的吗?Stack Overflow 需要一个明确的答案。

0 投票
2 回答
18747 浏览

oracle - 试图在每 1 分钟后执行一项工作,但它不起作用?

我已经完成了这项工作,应该每隔 1 分钟执行一次,但它不起作用。当我使用 execute dbms_job.run(2);它时,它会被执行。 printe是一个程序 请指教!

0 投票
1 回答
6216 浏览

oracle - Oracle Job 无缘无故没有被执行

我在 oracle 中编写作业以执行存储过程,但是当时机成熟时,它不会无缘无故地发生任何事情。

是否有某种日志可以让我查看是否发生了错误或其他什么?

我使用 dbms_job 包来创建作业

坦克。

0 投票
4 回答
24507 浏览

oracle - DBMS_JOB 与 DBMS_SCHEDULER

DBMS_JOB 和 DBMS_SCHEDULER 有什么区别?

0 投票
4 回答
51423 浏览

oracle - 禁用 Oracle 中所有作业的脚本(DBMS_JOB 包)?

我正在寻找一个禁用所有作业的脚本。现在我在 Toad 中突出显示它们,单击脱机按钮,然后提交更改。在 PL/SQL 中必须有一种方法可以做到这一点。

0 投票
2 回答
5641 浏览

oracle - Oracle dbms_job:作业只能在工作日早上 6 点到晚上 8 点运行

我有一个具有不同工作的 oracle 10g 数据库。其中一项工作必须每两个小时运行一次。因此“next_dat”和“interval”参数看起来像这样。

这些作业不需要在晚上运行。所以问题是:是否有可能以这种方式设计例如“间隔”,即作业仅在上午 6 点到晚上 8 点之间运行(在 hh24 06:00 到 20:00 之间)。

我的第一个想法(也是最后一个选择)是一项附加工作,它将主要工作设置为在晚上 8 点到早上 6 点之间“中断”。但我不喜欢换一份工作的想法。

谢谢!

0 投票
1 回答
28312 浏览

sql - 使用 DBMS_JOB 在 Oracle 中创建作业

我正在尝试创建一个将在每个圣诞节运行特定程序的工作。这是我已经走了多远:

但是,我似乎找不到一种简单的方法来将时间间隔更改为每年,并且通常对如何进行此操作感到非常困惑,非常感谢任何帮助

0 投票
1 回答
6035 浏览

oracle - DBMS_JOB 中的 DDL 语句

我正在尝试使用 DBMS_JOB 安排作业(出于安全原因,我不能使用 DBMS_SCHEDULER),它使用 DDL 语句。

它无法执行给我一条错误消息:

ORA-12011:执行 1 个作业失败 ORA-06512:在“SYS.DBMS_IJOB”,第 548 行 ORA-06512:在“SYS.DBMS_JOB”,第 278 行 ORA-06512:在第 8 行

从匿名块中删除DBMS_JOB.RUN()语句后,我至少能够创建(并保存)作业。当我检查作业时,它已将其保存为 执行 BEGIN EXECUTE IMMEDIATE 'CREATE TABLE temp1 (id NUMBER) '; 结尾;

如果我独立执行它,它显然会执行。当我尝试通过调用 DBMS_JOB.RUN() 来执行整个事情时,它唯一一次失败了。

在 DBMS_JOB 中使用 DDL 语句作为参数是否有限制?我在文档中找不到任何指针。