Stream 配置报告和health check脚本
适用的版本9.2.0.1到11.2.0.1,次文档信息适用于任何平台。
目的。为了提供有用的脚本,oracle数据库中的stream配置相关的所有信息,快速检索。此外,此文说明一些注意事项和一些指导方法,这有助于更好的理解。要正确分析一个关于stream的问题,这个还是有些必要的,stream环境中所涉及的所有数据库检索的HC输出。
范围和应用。Stream配置报告提供了一个单独数据库中指定的oracle streams环境相关的信息,本报告中有用,为的是确定对象和一些stream相关信息。这些脚本不修改stream的配置,每个脚本报告strem的设置和操作的重要信息,这将提供一个一致性的基础,可以知道发生了什么和解决问题。另外还需注意,在RDA的新版本中,你可以使用类似的信息检查oracle stream 的STC,所以你可以运行./rda.sh -vCRP STC or ./rda.sh -vCRP OS DB DBA NET D2PC STC STM。
配置stream报告和HC脚本
1、首先要下载脚本,有对应版本的脚本提供下载
2、如何运行脚本
作为sysdba身份连接,默认情况下,有脚本生成的html格式的输出,所以请确定格式以方便浏览器可以打开。
运行脚本的示例为
sqlplus /nolog
SQL> spool /tmp/mysite.html
SQL> @streams_hc_10GR2.sql
SQL> exit
解释strem HC脚本的输出
脚本的输出取决于你的HC脚本版本,哪个数据库,哪个实例。当启动脚本的时候信息也将显示出来
如何配置脚本。在配置行,你可以找到link的HC,用于分析不同的组件配置,配置报告上返回的信息为静态,所以你会检索定义的组件信息,尽管他们还没运行。对于queue,他在数据库中定义stream队列和用户的报告,queue用于捕获,它提供了在数据库中配置的捕获过程的信息。捕获进程的状态(enabled,disabled,aborted)会显示不同scn。如果是启用,这将是必要的检查统计捕获的状态,还有知道其身份。
以下是aparts报告:
* Capture Processes In Database
* Capture Process Source Information
* Capture Process Parameters
* Streams Capture Rules Configured With Dbms_Streams_Adm Package
* Streams Table Subsetting Rules
* Capture Rules By Rule Set
* Capture Rules In Negative Rule Set
* Capture Rule Transformations By Rule Set
* Registered Log Files For Capture
* Capture Extra Attributes
* Tables Prepared For Capture
* Schemas Prepared For Capture
* Database Prepared For Capture
* Tables With Supplemental Logging
* Table Level Supplemental Log Groups Enabled For Capture
* Supplementally Logged Columns
* Messaging Clients In Database
* Message Client Notifications
如果捕捉注册日志文件的报告文件数量变得非常大,请考虑修改checkpoint_retention_time捕捉的设置可参考官方文档。
以下是aparts静态报告
* Apply Information
* Apply Process Information
* Apply Process Handlers
* Apply Process Parameters
* Streams Apply Rules Configured
* Streams Table Subsetting Rules
* Apply Rules
* Apply Rules By Rule Set
* Apply Rules In Negative Rule Set
* Apply Rule Transformations By Rule Set
* Apply Handlers
* Apply Dml Handlers
* Dml Handler Status
* Rule Transformations Status
* Apply Enqueue Directives
* Apply Execute Directives
* Conflict Detection Control
* Update Conflict Resolution Columns
* Key Columns Set For Apply
* Object Dependencies Set For Apply
* Value Dependencies Set For Apply
* Apply Progress
* Error Queue
* Instantiation Scns For Apply Tables
* Instantiation Scns For Apply Schema And Database (Ddl)
* Dba Objects - Rules, And Streams Processes
这最后一次“apply process”是有用的,它知道什么时候申请的应用的变化。
下面是aparts报告
* Database Information
* Instance Information
* Current Database Incarnation
* Registry Information
* Nls Database Parameters
* Global Name
* Key Init.ora Parameters
注意一点init.ora可报告的参数aq_tm_processes可设置为0。如果这个参数手动设置为0,就是unset。在10g以后,建议改参数自动调整。
一下是分析对历史报告最后一天发生的信息,返回信息用于研究,如果内存设置,那么捕获和应用的数量正确的或者有可能有助于确定一天的高峰期。
Aparts报告:
* Streams Buffered Queue History for last day
* Streams Buffered Subscriber History for last day
* Streams Pool Advice History for last day
* Streams Capture History for last day
* Streams Apply History for last day
对于rules,脚本执行了一下查询,检查一下可能有不正确的配置,因此本章节期望的空行,当你设置好了运行该脚本,如果返回的是空,那么你配置的没有任何问题。
* Check For Missing Rules In Dba_Rules
* Check For Extra Rules In Dba_Rules
* Check For Rule_Conditions Do Not Match Between Streams And Rules
* Check For Source Database Name Does Not Match For Capture Or Propagation Rules
* Check For Global Rule For Capture Specified But Condition Not Modified
* Check For No Rule Set Defined For Capture
* Check For Apply Rules With No Source Database Specified
* Check For Schema Rules For Non_Existant Schema
* Fast Evaluation Rule Set Rules For Queues
有关通知,该报告将包含所有有关当前信息输出,根据问题的严重性报告错误或者警告。理想情况下该生成任何输出,它不仅检查stream的问题,也将执行一些sys检查和init.ora检查。
为了提高性能,脚本执行代码,验证stream的情况,如果出现任何严重的性能问题。
下面是等待的分析报告
* Logminer Reader Processes
* Logminer Preparer Processes
* Logminer Builder Processes
* Capture Processes
* Propagation Sender Processes
* Propagation Receiver Processes
* Apply Reader Processes
* Apply Coordinator Processes
* Apply Server Processes