Oracle 等待事件 alter system set dispatcher 官方解释,作用,如何使用及优化方法

本站中文解释

Oracle事件是Oracle数据库管理系统中运行外部操作系统任务和其他与系统交互的任务的触发器。通常,Oracle事件是由特定条件(如特定时间,文件可用时或其他事件发生时)触发。当这些条件被满足时,Oracle服务器可以执行预定义的操作(称为Oracle事件)。

alter system set dispatcher命令用于更改有关系统I/O子系统的参数的值,以改变事件的触发方式和事件的处理服务。此外,它还可以禁用系统I/O子系统中的某些功能,如多播支持、JMS支持和快速事件响应。

Dispatcher的参数可以用来控制I/O类型的事件的相关处理,允许在整个实例中运行活动线程的最大数量,并执行触发器的未决I/O类型事件。如果I/O事件堆积,你可以使用此参数把它们分成线程,而不会影响其他活动线程。

Dispatcher参数可以用以下语句设置:

Alter system Set dispatcher=’value’ [Instance=B|R[,p1=value1[,p2=value2]]]

其中,B或R是Oracle实例代号,默认为当前实例。P1和P2是可选属性,进一步定义Dispatcher参数:

P1 可以让你设置注册的最大活动线程数量。当然,如果您使用[B/R]选项设置多个实例,可以为各个实例设置不同的最大活动线程数量。

P2可以让你设置未决IO事件触发器当前活动线程的最大数量。[P2]被设置为0时,将停用未决IO事件处理,这仅在极端情况下才有必要执行。

示例:可以使用下面的语句,为默认实例设置最大活动线程数为20:
alter system set dispatcher=’max_active_dispatchers=20′

使用语句时要小心,因为这会给正在运行的触发操作和事件带来重大变化。请务必编写负责的测试方案,以便它正确地运行和反应实际情况,然后进行正式部署。

官方英文解释

A session has issued a statement ALTER SYSTEM SET DISPATCHER = string and is waiting for the dispatchers to get started.

Wait Time: The session will wait 1 / 100 of a second and verify if the new dispatchers have started, else the session will wait again

Parameter Description

waited

Number of times that the session has waited 1 / 100 of a second


数据运维技术 » Oracle 等待事件 alter system set dispatcher 官方解释,作用,如何使用及优化方法