- 浏览: 7356610 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (1546)
- 企业中间件 (236)
- 企业应用面临的问题 (236)
- 小布Oracle学习笔记汇总 (36)
- Spring 开发应用 (54)
- IBatis开发应用 (16)
- Oracle基础学习 (23)
- struts2.0 (41)
- JVM&ClassLoader&GC (16)
- JQuery的开发应用 (17)
- WebService的开发应用 (21)
- Java&Socket (44)
- 开源组件的应用 (254)
- 常用Javascript的开发应用 (28)
- J2EE开发技术指南 (163)
- EJB3开发应用 (11)
- GIS&Mobile&MAP (36)
- SWT-GEF-RCP (52)
- 算法&数据结构 (6)
- Apache开源组件研究 (62)
- Hibernate 学习应用 (57)
- java并发编程 (59)
- MySQL&Mongodb&MS/SQL (15)
- Oracle数据库实验室 (55)
- 搜索引擎的开发应用 (34)
- 软件工程师笔试经典 (14)
- 其他杂项 (10)
- AndroidPn& MQTT&C2DM&推技术 (29)
- ActiveMQ学习和研究 (38)
- Google技术应用开发和API分析 (11)
- flex的学习总结 (59)
- 项目中一点总结 (20)
- java疑惑 java面向对象编程 (28)
- Android 开发学习 (133)
- linux和UNIX的总结 (37)
- Titanium学习总结 (20)
- JQueryMobile学习总结 (34)
- Phonegap学习总结 (32)
- HTML5学习总结 (41)
- JeeCMS研究和理解分析 (9)
最新评论
-
lgh1992314:
[u][i][b][flash=200,200][url][i ...
看看mybatis 源代码 -
尼古拉斯.fwp:
图片根本就不出来好吧。。。。。。
Android文件图片上传的详细讲解(一)HTTP multipart/form-data 上传报文格式实现手机端上传 -
ln94223:
第一个应该用排它网关吧 怎么是并行网关, 并行网关是所有exe ...
工作流Activiti的学习总结(八)Activiti自动执行的应用 -
ZY199266:
获取不到任何消息信息,请问这是什么原因呢?
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息 -
xiaoyao霄:
DestinationSourceMonitor 报错 应该导 ...
ActiveMQ 通过JMX监控Connection,Queue,Topic的信息
1.查看系统用户dump
show parameter dump;
background_dump_dest:存储alertlog和后台进程trace的.
user_dump_dest:存储用户的trace文件.
max_dump_file_size:跟踪文件的大小.
alter system set max_dump_file_size=500;
alter system set user_dump_dest='';
2.初始化SQL TRACE
A.timed_statistics参数:(一般用户和dba)
timed_statistics=true 允许sql trace 和其他的一些动态性能视图收集与时间有关的参数、
系统级别:
alter system set timed_statistics=true;
会话级别:
alter session set timed_statistics=true;
查看dump的文件的大小
B.sql_trace参数(dba权限可以修改)
sql_trace=true表示启动跟踪,false表示禁用跟踪.
系统级别:
alter system set sql_trace=true scope=spfile;
会话级别:
alter session set sql_trace=true;
通过存储过程启动sql_trace
execute rdbms_system.set_sql_trace_in_session(SID,SERIAL#,true);
ps:9为SID,7为SERIAL# true为开启跟踪
使用说明:
1.用户dba用户登录
sqlplus /nolog
conn /as sysdba
2.设置初始化跟踪参数
alter session set timed_statistics=true;
dba用户跟踪:
alter session set sql_true=true;
dba跟踪其他用户(利用sys跟踪tbs,sysdba登录):
select sid,serial#,command,username
from v$session
where username='TBS';
SID:121
SERIAL#:4786
exec dbms_system.set_sql_trace_in_session(121,4786,true);
查看TBS用户的跟踪文件:
用户跟踪文件的命名格式为:<oracle-SID>-ora-<PSID>.trc
备注:<oracle-SID>:oracle 的SID.
<PSID>:跟踪用户sid.
3.查找跟踪文件
根据会话中用户的名称查找对应paddr,根据paddr查找对应的进程spid.
select spid from v$process
where addr = (
select paddr from v$session
where username='TBS'
);
如果oracle-SID为ticket,spid=35572,那么对应的跟踪文件为: ticket-ora-35572.trc.
然后使用TKPROF查看执行信息:
TKPROF的使用
tkprof 的目的是将sql trace 生成的跟踪文件转换成用户可以理解的格式.
tkprof可对.trc文件进行分析,并生成一个分析文件.并且在分析.trc文件,生
成分析文件时按各种选项进行排序,其中比较有用的一个排序选项是fchela,
即按照elapsed time fetching来对分析的结果排序(记住要设置初始化参数
time_statistics=true),生成的.prf文件将把最消耗时间的sql放在最前面
显示。另外一个有用的参数就是sys,这个参数设置为no可以阻止所有以sys
用户执行的sql被显示出来,这样可以减少分析出来的文件的复杂度,便于查看。
1. 格式
tkprof inputfile outputfile [optional | parameters ]
参数和选项:
explain=user/password 执行explain命令将结果放在SQL trace的输出文件中
table=schema.table 指定tkprof处理sql trace文件时临时表的模式名和表名
insert=scriptfile 创建一个文件名为scriptfile的文件,包含了tkprof存放的输出sql语句
sys=[yes/no] 确定系统是否列出由sys用户产生或重调的sql语句
print=number 将仅生成排序后的第一条sql语句的输出结果
record=recordfile 这个选项创建一个名为recorderfile的文件,包含了所有重调用的sql语句
sort=sort_option 按照指定的方法对sql trace的输出文件进行降序排序
sort_option 选项
prscnt 按解析次数排序
prscpu 按解析所花cpu时间排序
prsela 按解析所经历的时间排序
prsdsk 按解析时物理的读操作的次数排序
prsqry 按解析时以一致模式读取数据块的次数排序
prscu 按解析时以当前读取数据块的次数进行排序
execnt 按执行次数排序
execpu 按执行时花的cpu时间排序
exeela 按执行所经历的时间排序
exedsk 按执行时物理读操作的次数排序
exeqry 按执行时以一致模式读取数据块的次数排序
execu 按执行时以当前模式读取数据块的次数排序
exerow 按执行时处理的记录的次数进行排序
exemis 按执行时库缓冲区的错误排序
fchcnt 按返回数据的次数进行排序
fchcpu 按返回数据cpu所花时间排序
fchela 按返回数据所经历的时间排序
fchdsk 按返回数据时的物理读操作的次数排序
fchqry 按返回数据时一致模式读取数据块的次数排序
fchcu 按返回数据时当前模式读取数据块的次数排序
fchrow 按返回数据时处理的数据数量排序
通过TKPROF生成相关的文件:
tkprof ticket-ora-35572.trc ticket_tbs.prf aggregate=yes sys=no sort=fchela
发表评论
-
Oracle11G RMAN备份和恢复笔记(五)
2011-09-17 21:46 3055我们RMAN可以 ... -
Oracle11G RMAN备份和恢复笔记(四)
2011-09-17 21:40 2363常用的RMAN命令: report schema; list ... -
Oracle11G RMAN备份和恢复笔记(三)
2011-09-17 21:39 3018RMAN在各种情况下的恢复过程简述: RMAN恢复 口令 ... -
Oracle11G RMAN备份和恢复笔记(二)
2011-09-17 21:36 3860非catalog各种备份方式: 全库备份 backup d ... -
Oracle11G RMAN备份和恢复笔记(一)
2011-09-17 21:36 8480Oracle11G RMAN备份和恢复 RMAN可连接的数据 ... -
Oracle 性能调优学习笔记(十八)--- 操作系统调优
2011-09-16 10:33 2155操作系统调优 不同系统的架构 单处理器系统 ... -
Oracle 性能调优学习笔记(十七)--- 监控和探测锁机制
2011-09-16 10:31 2257监控和探测锁机制 Oracle锁机制特 ... -
Oracle 性能调优学习笔记(十六)--- 使用物化视图
2011-09-16 10:29 3799使用物化视图 授权物化视图权限. ... -
Oracle 性能调优学习笔记(十五)-- 应用调优
2011-09-16 10:28 2201表迁移(非分区表) 1.权限和约束将被保持. ... -
Oracle 性能调优学习笔记(十四)-- 有效使用Oracle 存储结构
2011-09-16 10:27 2028有效使用Oracle 存储结构 表的种类: hea ... -
Oracle 性能调优学习笔记(十三)-- 有效的使用数据块
2011-09-16 10:24 2084有效的使用数据块 避免动态extent的缺点 ... -
Oracle 性能调优学习笔记(十二)-- 统计管理B
2011-09-16 10:22 2348Histograms:描述列的分布信息. ... -
Oracle 性能调优学习笔记(十二)-- 统计管理A
2011-09-16 10:22 1980统计管理 优化器统 ... -
Oracle 性能调优学习笔记(十一)-- SQL 语句优化
2011-09-16 10:20 2701SQL 语句优化 判断SQL占用资源的方法 1.OEM ... -
Oracle 性能调优学习笔记(十)-- 使用资源管理包
2011-09-16 10:19 1950使用资源管理器 使用资源管理器: 1 ... -
Oracle 性能调优学习笔记(九)-- 优化排序操作B
2011-09-16 10:17 2040监控SQL使用的内存 s ... -
Oracle 性能调优学习笔记(九)-- 优化排序操作A
2011-09-16 10:16 2077优化排序操作 SQL内存使用: 排序操作:sort, ... -
Oracle 性能调优学习笔记(八)-- Oracle 共享服务器的性能调优
2011-09-16 10:13 2409Oracle 共享服务器的性能调优 Shared Se ... -
Oracle 性能调优学习笔记(七)-- 其他SGA结构的调整
2011-09-16 10:12 1690监控redolog buffer ... -
Oracle 性能调优学习笔记(六)-- 态实例调整
2011-09-16 10:10 1639Oracle9i:动态SGA调整 SGA中各种配置可以通过 ...
相关推荐
通过这五讲的学习,你可以全面了解Oracle数据库性能调优的基本原理和实践技巧,从SQL优化、操作系统层面的调整到数据库内部机制的深入剖析,全面提升你在数据库管理领域的专业能力。在实际工作中,这些知识将帮助你...
4. 使用性能分析工具:使用性能分析工具,例如 Oracle 的 SQL_TRACE 和 TKPROF 工具,来分析和优化数据库的性能。 四、结论 解决 CPU 高度消耗 (100%) 的问题需要通过多种方法来实现。首先需要找到问题的根源,...
### Oracle数据库性能调优基础篇 #### 一、Oracle架构与基础知识 在Oracle数据库的架构中,主要包括...通过深入学习Oracle的基础架构、SQL优化技术、性能分析工具以及最佳实践,可以显著提升数据库系统的性能表现。
这通常需要使用到如SQL*Plus、 tkprof 或者 Oracle的自动SQL调优工具。 2. **索引优化**:根据数据访问模式合理创建和管理索引,可以显著提升查询速度。 3. **内存管理**:调整SGA(System Global Area)和PGA...
3. SQL Trace与TKPROF:用于跟踪SQL语句执行过程,通过TKPROF工具分析输出结果,找到慢查询的原因并进行优化。 五、并行执行与资源管理 1. PARALLEL执行:通过并行执行计划提高大数据量操作的速度,但需考虑并行度...
Oracle SQL性能优化涉及对SQL语句执行过程的理解,如使用EXPLAIN,AUTOTRACE,SQL Trace,TKPROF等工具进行分析。优化器的选择,如基于规则优化器(RBO)和基于成本优化器(CBO),对索引的使用,以及统计信息的准确收集...
1. **性能监控与分析**:书中详细介绍了Oracle的性能监控工具,如SQL Trace、TKPROF、AWR(自动工作负载存储库)和ASH(活动会话历史)等,这些都是DBA日常工作中不可或缺的性能分析手段。通过这些工具,可以追踪SQL语句...
- **SQL Trace和TKProf**: 这些工具可用于追踪SQL语句的执行情况,帮助识别低效的SQL查询。 ##### 3. **SQL语句优化** - **索引优化**: 索引可以显著提高查询速度,合理地创建和维护索引对于提高查询性能至关重要...
6. **监控与诊断**:Oracle提供了一系列工具,如SQL Trace,TKPROF,AWR(自动工作负载仓库),ASH(活动会话历史)等,用于收集性能数据并进行问题定位。理解如何使用这些工具是性能调优的关键。 7. **数据库重构*...
本资料集是作者精心整理的Oracle调优笔记,涵盖了一系列实用的调优技巧和工具,旨在帮助读者理解和实践Oracle数据库的性能优化。 1. **SQL优化**:SQL查询是数据库性能的关键。优化SQL语句可以显著提升性能,包括...
Oracle数据库在进行性能调优时,经常会涉及到对跟踪文件(Trace Files)的分析。这些跟踪文件包含了数据库执行的详细信息,如SQL语句、执行计划、等待事件等,但原始的跟踪文件数据往往混乱且不易读。这时,我们就...
对于性能调优的方法论,了解SQL执行过程、使用分析工具(如EXPLAIN、AUTOTRACE、SQL Trace、TKPROF)是基础。优化器的工作方式,如基于规则优化器(RBO)和基于成本优化器(CBO),以及索引的选择和使用,例如B树...
Oracle 9i引入了SQL Trace和TKPROF工具,用于跟踪SQL语句的执行情况并生成分析报告,帮助识别慢查询。此外,绑定变量的使用可以减少解析开销,提高执行计划的重用率。优化器(Cost-Based Optimizer, CBO)根据统计...
了解如何使用EXPLAIN PLAN,SQL Trace,以及 tkprof 工具来分析查询性能至关重要。此外,理解索引的作用,何时使用全表扫描与索引扫描,以及如何创建和维护有效的索引也是性能优化的基础。 2. **内存管理**:Oracle...
SQL Trace 和 TKPROF 是 Oracle 数据库中非常强大的性能分析工具,它们可以帮助 DBA 和开发人员深入了解数据库的运行状态,及时发现并解决性能问题。通过正确配置 SQL Trace 参数,启用 SQL Trace,以及合理使用 ...
- **使用TKProf工具**:分析追踪文件,帮助理解SQL执行过程中的瓶颈。 - **检查优化器模式**:确保使用了最适合当前环境的优化策略。 - **参数调整**:根据实际情况调整Oracle初始化参数。 #### 六、确定原因 - **...
总结以上,Maclean讲授的Oracle SQL调优精要文档,详细讲解了Oracle SQL调优的基本思想和关键步骤。它不仅关注SQL语句的执行过程,还深入解释了会话在执行SQL时的状态以及游标的使用。这些知识对于数据库管理员、...
- **性能诊断**:使用 tkprof、gdb、trace 文件等工具进行问题定位。 - **调优最佳实践**:定期维护任务,如统计信息收集、索引重建等。 8. **Oracle新特性**: - **12c及更高版本的新功能**:如多租户架构、In-...
《Oracle SQL调优新思维》是一本深入探讨SQL性能优化的专业资料,涵盖了从理论到实践的全面内容。在Oracle数据库管理中,SQL调优是提升系统性能的关键环节,它涉及了多个方面,包括查询优化、执行计划分析、索引策略...
本文主要围绕ORACLE数据库的性能优化,特别是如何通过不同的方式来追踪和分析SQL语句的执行,从而找出性能瓶颈。 首先,了解如何查询当前正在执行语句的执行计划是至关重要的。通过`V$SQL_PLAN`视图,我们可以获取...