Introduction to Oracle Wait Interface notes
文章提到,用Cache hit ratio的方法来检查ORACLE性能问题过时了,里面有句非常形象的话:这无异于一个医生只知道根据血压的来治疗病人,而病人由于疼痛,神经兴奋,血压在一个合理的范围内,医生却告诉患者,你没病,等你血压低的时候再来。同样的,我们不能仅仅根据Cache hit ratio来判断ORACLE数据库是否出了问题,需要综合考虑,我们DBA能当那个医生吗?
高的cache hit ratio 不能说明性能就一定很好,低的cache hit ratio也不总是说性能不好,事实上有很多时候,cache hit ratio 经常很低,但是性能却没有丢失。
文章又提到,OWI是我们首选的调方法,在ORACLE10gEM performance的页面也没有出现cache hit ratio,它被ORACLE抛弃了。
现在看到第一张第五页.....明天继续。
现在ORACLE提出了数据库响应时间(Response Time)的调整模型 Response Time=ServiceTime+WaitTime.
ServiceTime 是一个进程花费在CPU上的总时间,WaitTime是一个进程为了继续工作而等待所需资源的总时间。一个进程要么处于活动状态(利用CPU处理请求),要么出于等待状态(CPU等待),我们可以通过缩短ServiceTime,或者WaitTime来提Responsetime。
在我们掌握OWI方法之前,我们必须改变3种关键的行为:
1.我们必须停止通过测量非吞吐量的命中率来检测性能。
2.我们要开始学习测量process response time来检测性能。
3.我们必须观察response time 调整方法中的资源消耗。
看完这章后,给我的总体感觉就是作者想要我们读者学会观察Response Time的方法来调整ORACLE的性能。
相关文档:
1 . set database to archivelog mode
Sql代码
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE&n ......
Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用。
分页查询格式:
SELECT * from
(
SELECT A.*, ROWNUM RN
from (SELECT * from TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21
其中最内层的查询SELECT * from TABLE_NAME表示不进行翻页的原始查询语句。ROWNUM <= 40和RN ......
一个db类 类似于jdbc的驱动和链接配置
package com.assi;
import org.apache.log4j.jdbc.JDBCAppender;
public class DB extends JDBCAppender {
public DB(){
this.setDriver("oracle.jdbc.driver.OracleDriver");
& ......
数据库查询中难免会遇到行列转换的情况,摘列一些较精典的解决方案
--####################################################################
一、采用SQL decode和PL/SQL函数实现
--####################################################################
1、固定列数的行列转换
如
student subject grade
---- ......