Oracle性能异常查询及调整脚本Word文档下载推荐.docx

上传人:b****2 文档编号:5139770 上传时间:2023-05-04 格式:DOCX 页数:19 大小:29.11KB
下载 相关 举报
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第1页
第1页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第2页
第2页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第3页
第3页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第4页
第4页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第5页
第5页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第6页
第6页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第7页
第7页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第8页
第8页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第9页
第9页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第10页
第10页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第11页
第11页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第12页
第12页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第13页
第13页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第14页
第14页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第15页
第15页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第16页
第16页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第17页
第17页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第18页
第18页 / 共19页
Oracle性能异常查询及调整脚本Word文档下载推荐.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Oracle性能异常查询及调整脚本Word文档下载推荐.docx

《Oracle性能异常查询及调整脚本Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Oracle性能异常查询及调整脚本Word文档下载推荐.docx(19页珍藏版)》请在冰点文库上搜索。

Oracle性能异常查询及调整脚本Word文档下载推荐.docx

WHERE 

a.start_time>

SYSDATE-0.1

-N4P$R9@:

P0 

ANDa.time_remaining>

0

2K_ne_L_x4N_Q__0 

ANDa.sql_id=b.sql_idITPUB个人空间(\%e!

o_Q)u

ORDERBY 

a.start_timeDESC;

_CZ*H!

s2{C_Jj3U3Z0如果是单机,可以使用以下脚本:

a.opname,

_A_@_E_v4O_R_F6z0 

a.SID,ITPUB个人空间2R-F_]W&

J_S)C_wI

a.serial#,ITPUB个人空间'

^8B%x_fR_[-Y_nc+e

_KD_a,jT_hu0 

I_]'

h%Y6v_~0 

a.time_remaining,ITPUB个人空间+]_D_y#p%@H

_i_a_K,{4?

_i

}/T0 

b.sql_fulltext,ITPUB个人空间_L0g_ER?

_u

a.MESSAGE,ITPUB个人空间/Y$z_qk6e1y#x|

b.module,

_m0~n.L

N_0 

b.executionsITPUB个人空间_a){)G(Z{_B_G

v$session_longopsa,v$sqlbITPUB个人空间_D_B;

D_]'

]'

h]0_

SYSDATE-0.1 

ITPUB个人空间_Z;

`-J_J8T4a/f*e

0ITPUB个人空间)[%@_u6Y

`h!

U

ANDa.sql_id=b.sql_idITPUB个人空间_v_Z_o_b9k.k.|

r_k%N_B;

|_R_o.j-o7s02.通过LinuxPID及SID查询相关SQL及程序:

select 

a.sid,a.serial#,a.program,b.spidfromv$sessiona,v$processb

P_E_}

P!

r%b0wherea.paddr=b.addrandb.spidin('

1245'

'

2985'

5884'

);

spid为top查看到的os段的processid.

ITPUB个人空间7v_@(M___gu_T3d

紧急处理时候可以通过killsession方式或直接killosprocess来结束进程。

ITPUB个人空间#p$d5q_ib_e_@6X)}_t

Altersystemkillsession'

SID,SERIAL#'

;

{_f5X_b_w_P_H_V0Kill-9 

SPID 

(unix,linux)ITPUB个人空间%?

_l)w_I8Ef

orakill 

sid(oracle_instance_name) 

spid 

(windows)

+P)o0g_b,y_{/u_a0selecta.username,a.machine,a.program,b.spid,c.sql_text

_D2i_E*RA_e_p6d0fromv$sessiona,v$processb,v$sqlareacITPUB个人空间1F_M)c_K_J_h-L/E!

\

wherea.paddr=b.addrand 

c.hash_value=a.sql_hash_value

_Q8t"

[_D(z1}_K_^_]0andc.address=a.sql_addressandb.spid=12984;

ITPUB个人空间*W`_z+z%B5y_`

ITPUB个人空间(\_s#O_R7jX(@

知道有问题的SPID情况下查看正在运行的SQL.

SELECTa.username,a.machine,a.program,a.sid,a.serial#,a.status,c.piece,c.sql_textITPUB个人空间_G_@%W_E_Q

fromv$sessiona,v$processb,v$sqltextcITPUB个人空间-h_X_Y)ns.T

WHEREb.spid='

14150'

ITPUB个人空间,y_t7c%S&

g_h_ls_C

ANDb.addr=a.paddrANDa.sql_address=c.address(+)orderBYc.piece

ITPUB个人空间W%q_}_`_r9|(U

3.查询Oracle库中的Lock(或通过Toad中sessionbrowser参看lock情况)

查看数据库中的锁(LOCK),找出程序及SQL

se.inst_id,se.SID,se.serial#,lk.SID,

^\*T_z_?

se.username,se.OSUser,se.Machine,se.program,ITPUB个人空间;

V3|R%C,`1a_O_}"

y,{_D

DECODE(lk.TYPE,ITPUB个人空间__*Pr2s)D_q9j

'

TX'

'

Transaction'

q

s_PX"

`5p0E0 

TM'

DML'

\[.I_j5{0j8p.R;

J*t0 

UL'

PL/SQLUserLock'

ITPUB个人空间_v_Z*K_r_M_?

___Zr:

A

lk.TYPE)

_b_A;

V_iD_E0 

lock_type,

x_L(Q_jG0 

DECODE(lk.lmode,

_r#u;

o_L6i(]0 

0,'

None'

ITPUB个人空间A"

E_\_~1U_i

1,'

Null'

$V0c_c_u"

j1K;

[_R_V-}0 

2,'

Row-S(SS)'

ITPUB个人空间_Y_{_b5s_Z__8J_\

3,'

Row-X(SX)'

ITPUB个人空间"

Z_b1J_?

#f1T$F5ech

4,'

Share'

ITPUB个人空间r'

O*L2X_|_j'

s

5,'

S/Row-X(SSX)'

5a.m;

d4a,k%g&

[H_B0 

6,'

Exclusive'

ITPUB个人空间$W,M1~\/O$i_y_S

TO_CHAR(lk.lmode))ITPUB个人空间2w_l;

S3__B&

O

mode_held,ITPUB个人空间G)u_L_`_C_(n_F

DECODE(lk.request,

_r_][_}_PVTX_S0Z0 

ITPUB个人空间*R$~+{-^`_kS+q_R4y*B_d

_E_G3C7|_@_[%N8n0 

_c)G_B_@_N"

KE_E8G)g0 

ITPUB个人空间-F3h_B.l_KF?

-e

_F_i2U'

K_l_T0 

+|_J"

Y%N_M_[H_u0 

_p_[_D_?

0q&

o0 

TO_CHAR(lk.request))ITPUB个人空间!

A_k-j4X_m:

sL;

u&

o

mode_requested,

_b_g__VH_[_D_s0 

TO_CHAR(lk.id1)lock_id1,ITPUB个人空间w_rFK!

zd

TO_CHAR(lk.id2)lock_id2,

F_dz,?

_z:

X_O_Q_[/p0 

ob.owner,ITPUB个人空间*A_d`_S_h;

?

_]

ob.object_type,

_H$W_@_kU5F0 

ob.object_name,

_T1}_\_J_f&

M7@0 

DECODE(lk.Block,

0d}0S__9m_O*T0 

0,ITPUB个人空间-V_^_F!

q(P*a2O

No'

ITPUB个人空间.?

_X*K7M,q+V_i_m

1,ITPUB个人空间_A

u_W-o*`_y

Yes'

ITPUB个人空间c_P_E1h8z#Q9H

2,ITPUB个人空间3|d_{-h_f

Global'

)ITPUB个人空间"

h_e_I!

Tl_l_f_[

block,ITPUB个人空间7J3}4U4l_{_V;

K

se.lockwait,

5c_`d;

U_f_O[_`p_l&

C0 

sq.sql_fulltextITPUB个人空间_~_X&

[c_K2g'

Oh2R[

GV$locklk,dba_objectsob,GV$sessionse,GV$sqlsq

!

L&

^_f!

z9F_f0 

WHERE 

lk.TYPEIN('

)ITPUB个人空间_~_n_`Z$i+H

ANDlk.SID=se.SIDITPUB个人空间Ik&

u_Q&

q_o0G_v

ANDlk.id1=ob.object_id(+)

%keo.s_g_t_Z2{0 

AND(lk.inst_id=se.inst_id)ITPUB个人空间6l5Y/n_F"

H_O_Q

ANDsq.address=se.sql_address;

4.通过AWR查询性能问题(默认有1小时延迟,不能查询当前时间的session)

SQL>

conn/ASSYSDBAITPUB个人空间_A4P_R+@1Pv$x;

}_u)r

@/u01/product/oracle/rdbms/admin/awrrpt.sql

I[_b_]_Y_p)P%j0输入report_type的值:

<

enter默认为html类型>

ITPUB个人空间*J0p_T+M_R+p

R

F

输入num_days的值:

---现在到过去两天时间内的snapid(可以查看到).

E]_V'

s_t}(cD0输入begin_snap的值:

2147 

---输入的开始及结束的snapid对应您要查找的出现问题的时间段。

ITPUB个人空间#GO_@-dw!

a_^_Y

输入end_snap的值:

2182 

_R9t;

my:

H_l_C&

i_L0输入report_name的值:

enter采用默认文件名>

%\_n*|c_d7W1Z_g5z%`_I0Reportwrittentoawrrpt_1_2177_2182.html

:

@_l_x8t_I_|(K_{+Q0SQL>

exit 

下载awrrpt_1_2177_2182.html并打开查看。

ITPUB个人空间-w9h_B/J_I_@_M8[J5p

ASH保存了系统最新的处于等待的会话记录,可以用来诊断数据库的当前状态;

ITPUB个人空间_h_W0e0{_L_Bzq_B)g4T

而AWR中的信息最长可能有1小时的延迟,所以其采样信息并不能用于诊断数据

$BEZ_M_[_s_K0库的当前状态,但可以用来作为一段时期内数据库性能调整的参考。

ITPUB个人空间)k_x_nxC_c_z

5. 

查询物理读写严重的SQL及查询哪个SID最消耗资源

)p/|K3hxF5A0查看占I/O较大的正在运行的session

SELECTse.sid,se.serial#,pr.SPID,se.username,se.status,se.terminal,se.program,se.MODULE,ITPUB个人空间:

f_}:

I_]%z:

^_?

se.sql_address,st.event,st.p1text,si.physical_reads,si.block_changesITPUB个人空间_M/\_p_B_^

FROM 

v$sessionse,v$session_waitst,v$sess_iosi,v$processprITPUB个人空间_f_H_W!

M_c_Y

N"

L%P

st.sid=se.sidANDst.sid=si.sidANDse.PADDR=pr.ADDRANDse.sid>

6ANDst.wait_time=0

2z8r_v)Z_p_Lf#Z0 

ANDst.eventNOTLIKE'

%SQL%'

ITPUB个人空间&

]Q_@,m7u

ORDERBYphysical_readsDESC;

查询物理读写严重的SQL

SELECT*ITPUB个人空间_XM)^_Tq+H_i0Q0|_|"

L__s

(SELECT 

sql_text,module,ITPUB个人空间8z_k@_cs_w2Y

disk_reads/DECODE(executions,0,1,executions)AStt

_J7{"

l_M'

Q_e0 

FROMv$sqlareaa

d&

\_Ve:

N^0 

ORDERBYttDESC)

m/Xt'

O5I1j_{0 

WHEREROWNUM<

=20 

查询哪个SID最消耗资源

selects.sid,s.value"

CPUUsed"

ITPUB个人空间_l_c

An8l'

p_p

fromv$sesstats,v$statnamenITPUB个人空间1____N!

c8fd

wheres.statistic#=n.statistic#andn.name='

CPUusedbythissession'

ITPUB个人空间_`_S6D6gO_W_g!

U/t_y_K)b

ands.value>

M2@___G_O5`,O_|!

L+R0orderby2desc;

ITPUB个人空间_@;

X_k4h_t

查找前十条性能差的SQL

SELECT*FROM 

)R_^_o_R.[^r0 

(selectPARSING_USER_ID,EXECUTIONS,SORTS,COMMAND_TYPE,DISK_READS,sql_text

_b0G0v`x_^0 

FROMv$sqlareaorderBYdisk_readsDESC)ITPUB个人空间5F3j_W6{_N(C1t

whereROWNUM<

10;

6. 

查询物件统计信息是否不是最新的。

select*from 

dba_tables 

T_\7C_F-O-R0wherewner='

DFMS'

andtable_name='

TEST'

andLAST_ANALYZED>

=sysdate-1ITPUB个人空间j-a7q_gjIp+G_g

andstatus='

VALID'

;

dba_indexeswhereLAST_ANALYZEDITPUB个人空间'

u3b_Am_F_{8C

wherewner='

andindex_name='

IDX_TEST'

=sysdate-1;

dba_tab_columnswhereLAST_ANALYZEDITPUB个人空间;

_'

[Z!

K4w2M

=sysdate-1ITPUB个人空间_~_e1Vf_i+t_fb

and 

COLUMN_NAME='

XXXXX'

_i2\z6k'

B07.绑定变量窥视(Peeking)问题

9i,10g绑定变量窥视使得执行计划出现变化。

11g有改善。

如果出现此类ITPUB个人空间#}_K9Yv_|,t5^f

问题导致的性能问题,需要升级到11g,或者加入hint进行强制改变执行计划。

ITPUB个人空间6A_i_M_t_?

_d#c!

D

8.坏块导致系统性能(当然一般alertlog中都有error,查询坏块)

SELECTsegment_name,segment_type,extent_id,block_id,blocksITPUB个人空间_E_D9G5[%`7{

fromdba_extentst

_j,J_?

_W_C_p0where 

file_id=10

'

y_`;

ZI,e_dO0AND51896 

betweenblock_idand(block_id+blocks-1)

_Y_g_qu_T_L7@08.Oracle9i,10gbuffercache及LibraryCache的命中率及其他 

9i命中率:

K2o$`/u_Z_z_]_M0//oracle9idatabufferhitratio. 

selecta.value+b.value"

logical_reads"

c.value"

phys_reads"

ITPUB个人空间_J)C;

h/TJ'

round(100*((a.value+b.value)-c.value)/(a.value+b.value))"

BUFFERHITRATIO"

_S"

`"

v_P_Z_fk&

}i0fromv$sysstata,v$sysstatb,v$sysstatcITPUB个人空间|5X&

eZL

z_H\y

wherea.statistic#=40andb.statistic#=41andc.statistic#=42;

ITPUB个人空间'

hD.?

_]_f_M

10g命中率:

_w$m_t+U_N

J0//oracle10gdatabufferhitratio. 

_e_Vb_H([#b_c0round(100*((a.value+b.value)-c.value)/(a.value+b.value))"

ITPUB个人空间ZC_X_v"

`_h)R_t7u9]

fromv$sysstata,v$sysstatb,v$sysstatc

9^"

Y_u_s_^+S;

Fi_k0wherea.statistic#=47andb.statistic#=50andc.statistic#=54;

监控SGALibraryCache的命中率,应该小于1%

selectsum(pins)"

TotalPins"

sum(reloads)"

TotalReloads"

~_G_x$Pc](W_B_C0sum(reloads)/sum(pins)*100libcache

uR_C%T.x_s_d0fromv$librarycache;

selectsum(pinhits-reloads)/sum(pins)"

hitradio"

s

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 实习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2