OracleDBA_Oracle品质优化的着力方法概述(方法论)

(6). 获得操作该段的sql语句:

(8).
至此已经找到影响属性的靶子和sql语句,能够有指向地优化

重点:

(4). 生成属性快速照相的表格

 

(1). 对于近来对话:

alter session set timed_statistics=true;

alter session set max_dump_file_size=unlimited;

oradebug setospid <SPID>

oradebug unlimit

oradebug event 10046 trace name context forever, level X /* Where X = (1,4,8,12) */
 sqlplus perfstat

 select min(snap_id) snapid_min, max(snap_id) snapid_max from stats$snapshot;

 @$ORACLE_HOME/rdbms/admin/spreport;
select owner,segment_name,segment_type,tablespace_name
from dba_extents
where file_id = &fileid_in
and &blockid_in between block_id and block_id + blocks - 1;

Thanks and Regards

I. CPU使用情况

(3).
获取品质数据,能够变更多少个快速照相

(3).必须在合理的命宫段上采集,一般在峰值时期照几个期限1四分钟的快速照相

(2). 对于任何的对话,
鲜明会话的长河ID(SPID),上面包车型大巴查询识别有名称以A初阶的持有用户的对话进程ID:

(3). 以 sysdba 进入sqlplus执行

select S.Username, P.Spid from V$SESSION S, V$PROCESS P
where S.PADDR = P.ADDR and S.Username like 'A%';

 

sar -u 5 1000

 

Step2.
度量并记录当前品质

进行应用程序,然后在USE奥迪Q3_DUMP_DEST建议的目录中找到跟踪文件。

从Oracle
等待接口v$system_event、v$session_event和v$session_wait中取得等待事件,进而找出影响属性的靶子和sql语句

(5).
利用P一 、P2的新闻,找出等待事件的有关的段

(3).
使用下边查询找到与所连接的对话有关的脚下拭目以俟事件。那几个消息是动态的,为了查看二个会话的等候最多的事件是何许,须求反复推行此询问。

(7). getsqltxt函数

推行队列(r)应该显明的平均小于(2*CPU数目)

select sid, getsqltxt(sql_hash_value,sql_address)
from v$session
where sid = &sid_in;
select se.sid,s.username,se.event,se.total_waits,se.time_waited,se.average_wait
from v$session s,v$session_event se
where s.sid = se.sid
and se.event not like 'SQL*Net%'
and s.status = 'ACTIVE'
and s.username is not null;

 

Step8.衡量并记下当前品质

Oracle 1二、分析

II. 设备选择景况

III. 虚拟内部存款和储蓄器使用状态

方法:执行STATSPACK

办法:指标必须是当下质量和所需质量的的陈述情势的语句。只需填写下列语句中的空格即可。

select sw.sid,s.username,sw.event,sw.wait_time,sw.state,sw.seconds_in_wait SEC_IN_WAIT
from v$session s,v$session_wait sw
where s.sid = sw.sid
and sw.event not like 'SQL*Net%'
and s.username is not null
order by sw.wait_time desc;

方法:

(1). 建立品质快速照相表空间

重点:

 

sar -d 5 1000

(2). UNIX上的监察

create or replace
function GetSQLtxt (hashaddr_in in v$sqltext.hash_value%type,
       addr_in in v$sqltext.address%type)
return varchar2
is
 temp_sqltxt varchar2(32767);
 cursor sqlpiece_cur
 is
  select piece,sql_text
  from v$sqltext
  where hash_value = hashaddr_in
  and address = addr_in
  order by piece;
begin
 for sqlpiece_rec in sqlpiece_cur
 loop
  temp_sqltxt := temp_sqltxt || sqlpiece_rec.sql_text;
 end loop;
 return temp_sqltxt;
end GetSQLtxt;

运用通用性的工具,包罗sar、iostat、cpustat、mpstat、netstat、top、osview等。

Oracle 2一、摘要

方法:

alter session set timed_statistics=true;

alter session set max_dump_file_size=unlimited;

alter session set events '10046 trace name context forever, level 12';

Step6.优化所需的成分(应用程序、数据库、I/O、争用、OS等)

 

Oracle 质量优化的骨干形式概述

 @$ORACLE_HOME/rdbms/admin/spcreate.sql;

行使控制面板-〉管理工科具-〉品质即可

在%busy超越6/10时,最佳设备利用率初叶下滑;在具有丰富磁盘高速缓存的系统上,认为avserv为100飞秒的值分外高。

  • 1)设立合理的属性优化指标。
  • 2)衡量并记下当前品质。
  • 3)分明当前Oracle品质瓶颈(Oracle等待什么、哪些SQL语句是该等待事件的成分)。
  • 4)把等待事件记入跟踪文件。
  • 5)鲜明当前的OS瓶颈。
  • 6)优化所需的成份(应用程序、数据库、I/O、争用、OS等)。
  • 7)跟踪并推行更改控制进度。
  • 8)衡量并记录当前质量
  • 9)重复步骤3到7,直到知足优化目的

 

(4). 查询会话等待事件的详细新闻

翻看文件中以词WAIT先河的具有行。

(5).
该报告中有关于质量的重中之重音信,如前七人的等候事件、cache大小、各个内部存储器结构的命中率、每秒及每工作逻辑、物理读写多少块数、品质最差的sql语句等

        使用了(财富量), 
但它无法使用超越。


(1).供给在峰值活动时间取妥当前系统天性快速照相

vmstat -S 5 1000

在USER_DUMP_DEST
的值提议的目录中应用SPID查看跟踪文件

转载
一江水-http://www.cnblogs.com/rootq/archive/2008/09/03/1282690.html

2014-12-18 Created By BaoXinjian

重在:关于设立目标的最根本的一点是它们必须是可量化和可高达的。

(2). 安装STATSPACK

select * from v$system_event
where event in ('buffer busy waits',
                'db file sequential read',
                'db file scattered read',
                'enqueue',
                'free buffer waits',
                'latch free',
                'log file parallel write',
                'log file sync');

Step5.
分明当前OS瓶颈

 

%sys和%wio的数值应该小于百分之10到15

假如在跟踪系统上的等候事件时,由于某种原因蒙受了麻烦,则足以将那一个等待事件记入贰个跟踪文件。

翻开文件中以词WAIT开始的持有行。

(1).
利用v$system_event视图执行下边包车型地铁查询查看数据库中或多或少常见的等待事件:

钉住有些时刻间隔得会话应用程序。


(1). Windows NT上的监察

Step4.
把等待事件记入跟踪文件

 

select sid,event,p1text,p1,p2text,p2,p3text,p3
from v$session_wait
where sid between &1 and &2
and event not like '%SQL%'
and event not like '%rdbms%';

重点:

(2).
接着,利用下边对v$session_event和v$session视图实行的询问,切磋具有对下边展现的剧情有进献的守候事件的对话:

(2).关键是要在出现质量难题的年华段内采集新闻

Step9.重复步骤3到7,直到满意优化目的

 

 sqlplus perfstat

 execute statspack.snap;

Step3.规定当前Oracle质量瓶颈

        花费了(时/分/秒),但须求它在
(时/分/秒)内执行。

Oracle 3

Step7.跟踪并施行更改控制进度

Step1.设立合理的性质优化目标

sqlplus sys as sysdba

create tablespace perfstat datafile '/u02/oradata/dbnms/perfstat.dbf' size 500M extent management local;

相关文章