数据库性能优化基础步骤.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1性能优化基本步骤 1.1定位跟踪耗费资源较多的SQL语句步骤 1.1.1通过SQL查询 :查询出最耗费资源的SQL语句 select t1?SID, tl.SERIAL#, tt?HASH_VALUE, tt-ADDRESS, ?BUFFER_GETS, --读内存次数 tt .DISK_READSZ --磁盘物理读次数 tt .EXECUTIONS, --语句的执行次数 tt. BUFFER_GETS / tt. EXECUTIONS, --平均读内存次数 tt ? SQL_FULLTEXT from v$sqlarea tt, v$session t1 where (tt.BUFFER_GETS 100000 or tt.DISK_READS 100000) and tt.HASH_VALUE = tl?SQL_HASH_VALUE and tt.ADDRESS = tl?SQL_ADDRESS and STATUS = ACTIVE* order by tt.BUFFER_GETS desc :根据客户端程序发出的SQL来定位需?要跟踪的session select s-sid sid, S?SERIAL# Hserial#nz s?username, s.machine, gram, s?server, s.LOGON_TIME from v$session s 1.1.2通过Oracle提供的SQL TRACE进行SQL跟踪 (i):跟踪前设定相应参数 1?査询得到需要跟踪的session 打开时间开关 Show parameter timed_statistics miter session set timed_statistics=true; exec sys .dbms_system. set_boo1_p3rem_in_sess:Lon (sid = 8, serial# = 3,parnam = timed_stdtistics1,bval = true); 3?设置跟踪文件存放位置 Show parameter user_dump_dest alter system set user_dump_dest =1c:\temp1; :启动跟踪功能并让系统运行一段时间 alter session set sql_trace=true; exec sys .dbms_system.set_sq[_ti:3ce_in_session (8, 3, true); :关闭跟踪功能 alter session set sql_trace=false; exec sys.dbms_system.set_sql_trAce_in_session(8, 3, false); :格式化跟踪数据文件,并分析跟踪结果文件 tkprof dsdb2_ora_18468?trc dsdb2_trace.txt EXPLAIN=SCOTT/TIGER tkprof各参数含义: traced_file 指定输入文件,即oracle产生的trace文件 ?formattedjile*指定输出文件,即我们想得到的易于理解的格式化文件 EXPLAIN*利用哪个用户对trace文件中的sql进行分析得到该sql语句的执行计划 1.2查看分析执行计划 1.2.1查看执行计划 : Sqlplus中可按F5查看执行计划 :使用执行计划表进行査看 使用语句将SQL语句的执行计划装入plan.table表,然后进行分析查看 explain plan set statement_id = 1dd1 into plan_table for select t?type_name,t?source_value,t?standard_value from ODS_STD_COMP t,ODS_STD_COMP_BAK tl where t.system_id = t1-system_id and t.type = tl.type and t.source_value = tl.source_value :示例演示 让ORALCE自动选择最优的执行计划,不人为干预 explain plan set statement_id = dd into plan_table for select t?type_name,t.source_value,t.standard_value from ODS_STD_COMP t,ODS_STD_COMP_BAK tl where t.system_id = t1.system_id and t.type = tl.type and t ? source_v31.ue = tl ? source_v31.ue Descnpbon O

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档