eygle.com   eygle.com
eygle.com eygle
eygle.com  
 

« Oracle DBA 入门、进阶学习路线图 | Blog首页 | 姥姥北京游之 - 北京动物园·海洋馆 »

10g QMON Architecture及AQ_TM_PROCESSES

在Oracle Database 10g中,如果你注意过,可能你已经发现AQ_TM_PROCESSES参数的设置已经发生了变化。

缺省的这个参数被设置为0,Oracle启动了自动调整:

SQL> show parameter aq

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
aq_tm_processes integer 0
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production

在某些版本升级之后,你可能发现告警日志中存在以下警告:
WARNING:AQ_TM_PROCESSES is set to 0

Metalink Note:305662.1 中有这样一段详细描述:

Beginning with release 10.1, the architecture of the QMON processes has been changed to an automatically controlled coordinator slave architecture. The Queue Monitor Coordinator, ora_qmnc_, dynamically spawns slaves named, ora_qXXX_, depending on the system load up to a maximum of 10 per instance.

For version 10.1 onwards it is no longer necessary to set AQ_TM_PROCESSES when Oracle Streams AQ or Streams is used. However, if you do specify a value, then that value is taken into account but the number of processes can still be auto-tuned and so the number of running qXXX processes can be different from what was specified by AQ_TM_PROCESSES. If AQ_TM_PROCESSES is not specified in versions 10.1 and above, QMNC only runs when you have AQ objects in your database.

If should be noted that if AQ_TM_PROCESSES is explicitly specified then the process(es) started will only maintain persistent messages. For example if aq_tm_processes=1 then at least one queue monitor slave process will be dedicated to maintaining persistent messages. Other process can still be automatically started to maintain buffered messages. If you explicitly set aq_tm_processes = 10 then there will be no processes available to maintain buffered messages. This should be borne in mind on 10g systems which use Streams replication and from 10.2 onwards user enqueued buffered messages.

不过最近发现在10g中,自动的高级队列调度会存在问题,QMNC的动态协同存在问题。这段文字收次备忘。


历史上的今天...
    >> 2012-10-31文章:
    >> 2011-10-31文章:
    >> 2010-10-31文章:
    >> 2007-10-31文章:
    >> 2006-10-31文章:
    >> 2005-10-31文章:
    >> 2004-10-31文章:

无觅

By eygle on 2008-10-31 14:44 | Comments (0) | Advanced | 2075 |


CopyRight © 2004~2020 云和恩墨,成就未来!, All rights reserved.
数据恢复·紧急救援·性能优化 云和恩墨 24x7 热线电话:400-600-8755 业务咨询:010-59007017-7040 or 7037 业务合作: marketing@enmotech.com