免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1778 | 回复: 5
打印 上一主题 下一主题

[help] dbms_job包问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-12-08 08:15 |只看该作者 |倒序浏览
在使用dbms_job包前,要在init.ora文件设置job_queue_interval和job_queue_processes参数(如果我没记错的话应该是这两个参数),就是设置snp后台进程进入睡眠状态的等待时间和执行作业的snp后台进程数;
即如果job_queue_interval=60,就表示在确定作业的执行时间间隔时必须在60秒之内,否则snp进程会进入睡眠状态;或者可以把job_queue_interval参数说成两次作业执行的最大时间间隔,超过该间隔时间,作业将不会被执行,因为snp进程会进入睡眠状态。

可是这样的话,如果要设置一星期执行一次的作业就不能达到了(从这些理论上),因为job_queue_interval的值在0~3600之间。而事实上是可以的,如何解释???如何解释job_queue_interval参数???


谢谢,大家

论坛徽章:
0
2 [报告]
发表于 2003-12-08 08:36 |只看该作者

[help] dbms_job包问题

job_queue_internal,为snp后台进程设置以秒记得唤醒时间间隔。在这个时间间隔之后,snp进程定期地醒来并检查准备执行的作业的作业队列!!!

而,每个job的时间间隔则通过该job的interval确定。例如:

论坛徽章:
0
3 [报告]
发表于 2003-12-08 10:01 |只看该作者

[help] dbms_job包问题

感谢nomood
job_queue_internal,为snp后台进程设置以秒记得唤醒时间间隔。在这个时间间隔之后,snp进程定期地醒来并检查准备执行的作业的作业队列!!!


可是,为什么,如果job_queue_interval=10,我第一次提交作业时,interval设为了60秒,该作业怎么也执行不了。而把job_queue_interval=90就可以呢?

论坛徽章:
0
4 [报告]
发表于 2003-12-08 10:45 |只看该作者

[help] dbms_job包问题

另外,下面是Oracle doc中的一段:
--------------------------------------------------------
The JOB_QUEUE_PROCESSES initialization parameter controls whether a coordinator job queue process is started by an instance. If this parameter is set to 0, no coordinator job queue process is started at database startup, and consequently no job queue jobs are executed. The JOB_QUEUE_PROCESSES initialization parameter also specifies the maximum number of Jnnn processes that can concurrently run on an instance. The maximum number of processes that can be specified is 1000.

The following initialization parameter setting causes the coordinator job queue process to start at database startup, and allows the spawning of a maximum of 60 concurrent Jnnn processes.

JOB_QUEUE_PROCESSES = 60

-------------------------------------------------------------------------

就是说,job_queue_processes的值范围是0~1000,而我执行JOB_QUEUE_PROCESSES = 60时,系统提示如下错误:
---------------------------------------------------------------------
ERROR 位于第 1 行:
ORA-00068: ? 202 ??? job_queue_processes ?????? 0 ? 36 ??
--------------------------------------------------------

就是说,该参数只能是0~36之间。如何解释,各位?

论坛徽章:
0
5 [报告]
发表于 2003-12-08 10:49 |只看该作者

[help] dbms_job包问题

有哪位高手能说说,job_queue_interval参数到底是什么意思??
是每隔多少秒,snp进程被击活,然后执行可执行的作业;还是在设置的时间内,如果没有要被执行的作业,snp进程就进入睡眠状态。

另外,我在oracle doc中没找到关于job_queue_interval参数的说明,有哪位知道?

谢谢

论坛徽章:
0
6 [报告]
发表于 2003-12-08 11:30 |只看该作者

[help] dbms_job包问题

job_queue_process最大只能36,指定将由oracle实例启动的snp后台进程树木

job_queue_internal:
In addition to defining the number of job processes, you must also define the job interval. The job interval determines how often your job processes "wake up" to execute any pending operations, such as pushing a queue. While the default value of 60 seconds is adequate for most replicated environments, you may need to adjust this value to maximize performance for you individual requirements. For example, if you want to propagate changes every 20 seconds, a job interval of 60 seconds would not be sufficient. On the other hand, if you need to propagate your changes once a day, you may only want your SNP process to check for a pending operation once an hour.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP