ORACLE 性能调试 总结中ing

来源:互联网 发布:智取威虎山 老八 知乎 编辑:程序博客网 时间:2024/06/05 07:38

1、分析用户所有的对象:

SELECT 'exec dbms_stats.gather_table_stats(''scms'',''' ||t.TABLE_NAME|| ''',cascade=>TRUE,estimate_percent=>2);'  FROM user_tables t

查询出来的记录,在Commond Window里执行:

exec dbms_stats.gather_table_stats('scms','SCMS_ORG_CODE_DSRIS_BAK',cascade=>TRUE,estimate_percent=>2);

exec dbms_stats.gather_table_stats('scms','BSP_DICTMGR',cascade=>TRUE,estimate_percent=>2);

……

2、调试sql

登录oracle服务器(UNIX、AIX),topas——找到执行最高的PID

然后在pl/sql里执行

select t.sql_text
  from v$process p, v$session s, v$sqltext t
 where p.addr = s.paddr
   and s.sql_hash_value = t.hash_value
   and p.spid = '1990832'--PID
 order by piece asc

 

找到sql语句,然后进行索引等调试。。。

原创粉丝点击