网站首页
JSP空间
动态资讯
开源项目
技术文档
资源下载
J2EE资源
客户论坛
在线支付
 
  技术文档>>数据库技术>>Oracle技术>>Oracle开发>查看文档  
  oracle数据库中使用dbms_profiler进行调优     
  文章作者:未知  文章来源:赛迪网技术社区  
  查看:110次  录入:管理员--2008-05-07  
 

【赛迪网-it技术报道】在进行数据库调优时,代码的性能瓶颈至关重要,oracle数据库提供的dbms_profiler包可以特别方便的发现瓶颈的所在之处。

dbms_profiler在使用之前可能需要安装,具体安装步骤如下:

◆1:执行$oracle_home/rdbms/admin/profload.sql

◆2:创建一个用于存放跟踪信息的schema

create user profiler identified by profiler default tablespace users quota unlimited on users;

grant connect to profiler;

create public synonym plsql_profiler_runs for profiler.plsql_profiler_runs;

create public synonym plsql_profiler_units for profiler.plsql_profiler_units;

create public synonym plsql_profiler_data for profiler.plsql_profiler_data;

create public synonym plsql_profiler_runnumber for profiler.plsql_profiler_runnumber;

◆3:使用刚刚创建的profiler用户执行如下脚本或代码:

$oracle_home/rdbms/admin/proftab.sql

grant select on plsql_profiler_runnumber to public;

grant select, insert, update, delete on plsql_profiler_data to public;

grant select, insert, update, delete on plsql_profiler_units to public;

grant select, insert, update, delete on plsql_profiler_runs to public;

安装成功后测试:

执行

begin

dbms_profiler.start_profiler('123');

for i in 1 .. 1000 loop

insert into a values (i || '');

end loop;

commit;

dbms_profiler.stop_profiler();

end;

执行后使用下面的代码检查:

select c.line#, c.total_occur, c.total_time, c.min_time, c.max_time

from plsql_profiler_runs a, plsql_profiler_units b, plsql_profiler_data c

where a.run_comment = '123'

and b.unit_owner = ''

and a.runid = b.runid

and a.runid = c.runid

and b.unit_number = c.unit_number

注意:每次dbms_profiler.start_profiler的输入参数需要改变,否则便不能分别运行后的运行结果了。

除此之外b.unit_owner =‘’中的约束值如果是在package里面需要是包名,如果是procedure则是procedure的名字。实在在不知道什么名字时可以在plsql_profiler_units中查一下。

此外,运行结果可以通过plsql developer来观察,需要新建一个test,在profiler中可以查看它的运行结果,示例如下:

 
 
上一篇: 全面解析oracle数据库的系统和对象权限    下一篇: oracle数据库sql语句性能调整的基本原则 (1)
  相关文档
帮你充分认识 Oracle 数据库表与视图 05-13
迅速安装Linux与Oracle数据库步骤精讲 07-07
如何避免Oracle数据库密码出现@符号 06-17
解析:如何正确的更改监听器日志文件名称 11-15
临时表在特定的条件下同样可以灵活易用 05-16
带你深入了解oracle数据库的"sys"口令 (1) 07-30
Oracle数据库的空间管理技巧 01-15
详细讲解oracle中isnumeric的三种实现 03-06
where子句在编写过程中需要注意的问题 (1) 03-28
带你深入的了解执着并购中的--甲骨文 11-15
oracle数据库备份与恢复精华资料集锦 (1) 04-15
用Oracle 10g新的行时间戳捕捉变化 04-11
oracle数据库buffer busy wait等待事件 (1) 04-17
Oracle HA 在Unix上双机环境的安装指南 08-05
教你轻松掌握数据库链路的建立和使用 (1) 05-06
个人经验总结:oracle数据库scn号详解 08-12
Linux平台下数据库资源使用情况分析 04-11
讲解oracle数据库提供的多种安全性措施 (1) 05-05
redo copy latch未命中率并不需要调整 04-16
实例讲解sql_trace和access path的用法 (1) 04-07
返回首页 | 关于我们 | J网章程 | JSP空间合租 | 客服中心 | 免责声明 | 常见问题 | 参观机房
本站主机空间代理至厦门市华众网络科技有限公司
《中华人民共和国增值电信业务经营许可证》
编号:闽B2-20050079
@2005-2008福建JSP技术网 版权所有 闽ICP备05000928号
厦门(总部):13616026886 福州:0591-87655121
邮箱:admin@fjjsp.com 站长QQ,点击这里给我发消息