郑州汉狮专业做网站公司,网站运营每天做啥工作,南昌新力中心 nanchang sinic center,手机活动网站模板Oracle 是目前世界上大型应用系统广泛使用的数据库#xff0c;Oracle 数据库产品为财富排行榜上的前1000 家公司所采用#xff0c;许多大型网站也选用了Oracle 系统。Oracle 内部结构比较复杂#xff0c;如图8.1 所示#xff0c;出现性能问题的可能性是比较大的。因此在性能…Oracle 是目前世界上大型应用系统广泛使用的数据库Oracle 数据库产品为财富排行榜上的前1000 家公司所采用许多大型网站也选用了Oracle 系统。Oracle 内部结构比较复杂如图8.1 所示出现性能问题的可能性是比较大的。因此在性能测试过程中应该密切关注Oracle的性能表现收集和监控Oracle 性能数据。要通过LoadRunner 监控Oracle首先必须在Controller 所在的机器上安装Oracle 客户端然后配置好服务名用sqlplus 确认可以连接Oracle之后就可以在Controller 中配置Oracle 连接配置的方法如下。(1)打开Controller选择监控图中的“Database Server Resource Graphs - Oracle”如图8.2 所示。(2)添加监控监控引擎选择“LoadRunner native monitors”单选按钮如图8.3 所示。(3)然后添加需要监控的Oracle 所在的服务器IP 地址如图8.4 所示。(4)输入Oracle 服务器的登录账号如图8.5 所示。(5)选择需要监控的Oracle 计数器如图8.6 所示。添加完监控IP 后如图8.7 所示。确定之后即可在Controller 的监控图表中看到收集的Oracle 性能数据如图8.8 所示。(6)修改Oracle 监控数据的收集频率。LoadRunner 默认间隔10 秒收集一个Oracle 性能数据数据取样的间隔太短会对Oracle 数据库性能造成一定的影响如果想调整收集频率可打开LoadRunner 安装目录中的datmonitorsvmon.cfg 文件修改其中的sample rate。需要注意的是LoadRunner 限制监控Oracle 收集性能数据的最小间隔是10 秒如果设置低于这个值会按10 秒间隔来收集。(7)添加自定义计数器。LoadRunner 在vmon.cfg 文件中设置了可收集的Oracle 性能计数器如果希望自己定义收集的性能数据可修改此文件添加相应的SQL 语句来定义计数器。例如可在LoadRunner 安装路径的datmonitors 找到vmon.cfg 文件并修改如下[V$ Monitor]Counters150CustomCounters9;How many seconds for each data sample?SamplingRate10[Custom0];Name must be uniqueName库快存命中率Description该计数器返回当前库快存命中率QuerySELECT 100*((sum(pins-reloads))/sum(pins)) from v$librarycacheIsRate0[Custom1];Name must be uniqueName高速缓存区命中率Descriptionoracle database shoot straightQuerySELECT round(1-SUM(PHYSICAL_READS)/(SUM(DB_BLOCK_GETS) SUM(CONSISTENT_GETS)), 4) * 100 FROM (SELECT CASE WHEN NAMEphysical reads THENVALUE END PHYSICAL_READS,CASE WHEN NAME db block gets THEN VALUE ENDDB_BLOCK_GETS,CASE WHEN NAME consistent gets THEN VALUE END CONSISTENT_GETSFROM V$SYSSTAT WHERE Name IN (physical reads,db block gets,consistentgets))IsRate0[Custom2];Name must be uniqueName共享区库缓存区命中率Description命中率应大于0.99QuerySelect round(sum(pins-reloads)/sum(pins) * 100, 2) from v$librarycacheIsRate0[Custom3];Name must be uniqueName共享区字典缓存区命中率Description命中率应大于0.85QuerySelect round(sum(gets-getmisses-usage-fixed)/sum(gets) * 100, 2) fromv$rowcacheIsRate0[Custom4];Name must be uniqueName检测回滚段的争用Description应该小于1%Queryselect round(sum(waits)/sum(gets) * 100, 2) from v$rollstatIsRate0[Custom5];Name must be uniqueName检测回滚段收缩次数Description应该小于1%Queryselect sum(shrinks) from v$rollstat, v$rollname where v$rollstat.usn v$rollname.usnIsRate0[Custom6];Name must be uniqueName监控表空间的I/O 读总数Description监控表空间的I/OQueryselect sum(f.phyrds) pyr from v$filestat f, dba_data_files df wheref.file# df.file_idIsRate0[Custom7];Name must be uniqueName监控表空间的I/O 块读总数Description监控表空间的I/OQueryselect sum(f.phyblkrd) pbr from v$filestat f, dba_data_files df wheref.file# df.file_idIsRate0[Custom8];Name must be uniqueName监控表空间的I/O 写总数Description监控表空间的I/OQueryselect sum(f.phywrts) pyw from v$filestat f, dba_data_files df wheref.file# df.file_idIsRate0