- 浏览: 7331095 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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的信息
SQL 语句优化
判断SQL占用资源的方法
1.OEM
2.Statspack
3.Explain Plan
4.SQL Trace and TKPROF
5.AutoTrace
优化器模型
两种优化器:
基于的规则的RBO:(不推荐)
1.规则在数据字典存在
基于的代价的CBO:
1.选择路径消耗(IO,CPU)最小的代价
2.统计指标
查询优化器工作原理
1.优化器产生一系列的SQL执行计划.
2.优化器是基于数据字典中该SQL的表存储信息,索引,数据分布,分区等信息.
cost是一个量化值,是一个期望出现的执行需要的资源(访问路径,排序,IO,CPU,内存).
串行中Cost越高,执行时间越长,并行中比较复杂.
3.优化器采用比较cost,选择最低的cost执行.
优化目标
默认情况下,查询优化器的目的获取最大的吞吐量.
最短的响应时间.
优化器行为
optimizer_mode={
CHOOSE:
FIRST_ROWS:不建议使用.
FIRST_ROWS_N:返回头部多长时间.
ALL_ROWS:11g缺省值.获取最大的吞吐量.
}
系统级别:
optimizer_mode={CHOOSE|FIRST_ROWS|FIRST_ROWS_N|ALL_ROWS}
会话级别:
alter session set optimizer_mode
语句级别
使用hints;
存储数据字典的统计数据.
优化器使用的优化器存储在数据字典中,你可以收集统计信息通过dbms_stats.
为了保护优化器的准确性,必须及时更新统计信息.统计信息为查询对象提供唯
一性和分布情况.
当使用查询优化器是没有可用 统计信息,优化器将使用一个简单的参数设置.
OPTIMIZER_DYNAMIC_SAMPLING.这将导致很慢的解析.
SQL使用Hints
create bitmap index gen_idx on customers(cust_gender);
查询使用hints
select /*+ INDEX(customers gen_idx)*/ cust_last_name,cust_street_address,
cust_postal_code
from sh.customers
where upper(cust_gender)='M';
_rows
select /*+ First_rows */ * from emp;
OPTIMIZER_FEATURES_ENABLE参数启用优化器采用版本行为.
如果想采用旧版本的特性,需要设置OPTIMIZER_FEATURES_ENABLE为旧本本版本号.
OPTIMIZER_FEATURES_ENABLE:优化器CBO采用的数据库版本.
如果升级数据库版本等,OPTIMIZER_FEATURES_ENABLE的优化器版本也将跟着改变.
SQL计划的管理(SQL plan management)
DBMS_SPM包中的LOAD_PLANS_FROM_CURSOR_CACHE或者LOAD_PLANS_FROM_SQLSET.
备注:在oracle9i中使用Stored outlines.oracle 9i已经过期.
由低版本迁移到高板本.
查看执行计划
EXPLAIN PLAN:
SQL Trace:
AWR:
v$sql_plan:
SQLPLUS Autotrace:
执行计划使用目的:
1.当前SQL的执行计划
2.index影响
3.执行路径
4.校验index是否有效.
5.检查哪一个执行计划应该执行
诊断工具
statspack:
以gets排序.读取次数最多.
以reads排序.从磁盘读的最多的.
以executions排序.
以parse calls排序.
explain plan:
需要plan_table,通过utlxplan.sql创建.
使用过程:
explain plan for
select * from scott.emp;
查看执行计划:
utlxpls.sql:非并行情况.
utlxplp.sql:显示并行情况下的执行计划.
dbms_xplan包:
select * from table (dbms_xplan.display)
同一缩进,先执行上面,
不同缩进,下执行下面.
SQL trace AND TKPROF:
1.设置初始化参数
alter session set sql_trace =true ;
2.运行程序
alter session set sql_trace =false ;
3.trace文件具有一定格式可以使用TKPROF查看文件内容
tkprof tracefile.trc output.txt [options]
备注:tracefile.trc在user_dump_dest目录下.
数据库实例级别:
sql_true=true|false
alter system set sql_trace =false ;
会话级别:
alter session set sql_trace =false ;
execute dbms_session.set_sql_trace(true|false);
execute dbms_system.set_sql_trace_in_session(session_id,serial_id,{True|False});
TKPROF 统计信息指标
Count:执行调用的次数.
CPU:CPU使用的毫秒数.
Elapsed:
Disk:物理读.
Query:逻辑读.
Current:当前模式下逻辑读
Rows:行处理.
SQLPLUS autotrace 特性:
1.创建plan_table
@?/rdbms/sqlplus/admin/plustrce.sql
2.创建并授权
grant plustrace to scott;
3.Auto语法
set autotrace [off|on | traceonly] [Explain | statistics]
OEM中Oracle SQL Analyze:
发表评论
-
Oracle11G RMAN备份和恢复笔记(五)
2011-09-17 21:46 3037我们RMAN可以 ... -
Oracle11G RMAN备份和恢复笔记(四)
2011-09-17 21:40 2347常用的RMAN命令: report schema; list ... -
Oracle11G RMAN备份和恢复笔记(三)
2011-09-17 21:39 2999RMAN在各种情况下的恢复过程简述: RMAN恢复 口令 ... -
Oracle11G RMAN备份和恢复笔记(二)
2011-09-17 21:36 3844非catalog各种备份方式: 全库备份 backup d ... -
Oracle11G RMAN备份和恢复笔记(一)
2011-09-17 21:36 8466Oracle11G RMAN备份和恢复 RMAN可连接的数据 ... -
Oracle 性能调优学习笔记(十八)--- 操作系统调优
2011-09-16 10:33 2140操作系统调优 不同系统的架构 单处理器系统 ... -
Oracle 性能调优学习笔记(十七)--- 监控和探测锁机制
2011-09-16 10:31 2242监控和探测锁机制 Oracle锁机制特 ... -
Oracle 性能调优学习笔记(十六)--- 使用物化视图
2011-09-16 10:29 3777使用物化视图 授权物化视图权限. ... -
Oracle 性能调优学习笔记(十五)-- 应用调优
2011-09-16 10:28 2176表迁移(非分区表) 1.权限和约束将被保持. ... -
Oracle 性能调优学习笔记(十四)-- 有效使用Oracle 存储结构
2011-09-16 10:27 2010有效使用Oracle 存储结构 表的种类: hea ... -
Oracle 性能调优学习笔记(十三)-- 有效的使用数据块
2011-09-16 10:24 2070有效的使用数据块 避免动态extent的缺点 ... -
Oracle 性能调优学习笔记(十二)-- 统计管理B
2011-09-16 10:22 2334Histograms:描述列的分布信息. ... -
Oracle 性能调优学习笔记(十二)-- 统计管理A
2011-09-16 10:22 1970统计管理 优化器统 ... -
Oracle 性能调优学习笔记(十)-- 使用资源管理包
2011-09-16 10:19 1934使用资源管理器 使用资源管理器: 1 ... -
Oracle 性能调优学习笔记(九)-- 优化排序操作B
2011-09-16 10:17 2023监控SQL使用的内存 s ... -
Oracle 性能调优学习笔记(九)-- 优化排序操作A
2011-09-16 10:16 2059优化排序操作 SQL内存使用: 排序操作:sort, ... -
Oracle 性能调优学习笔记(八)-- Oracle 共享服务器的性能调优
2011-09-16 10:13 2398Oracle 共享服务器的性能调优 Shared Se ... -
Oracle 性能调优学习笔记(七)-- 其他SGA结构的调整
2011-09-16 10:12 1669监控redolog buffer ... -
Oracle 性能调优学习笔记(六)-- 态实例调整
2011-09-16 10:10 1623Oracle9i:动态SGA调整 SGA中各种配置可以通过 ... -
Oracle 性能调优学习笔记(五)-- buffer Cache调优C
2011-09-16 10:09 1881Oracle Wait Interface检查瓶颈原因 ...
相关推荐
针对“Oracle DBA性能调优学习笔记”这一主题,我们可以提取并解释出以下重点知识。 首先,性能调优是一个多角色参与的过程。不仅DBA需要参与,应用架构师、应用设计师、应用开发人员以及OS和存储系统管理员也同样...
标题中提到的“ORACLE DBA工作笔记 运维数据迁移与性能调优”揭示了这本书籍主要围绕着...因此,类似于“ORACLE DBA工作笔记 运维数据迁移与性能调优”这样的专业书籍,是DBA们提升技能、增加实战经验的宝贵学习材料。
本文主要围绕ORACLE数据库的性能优化,特别是如何通过不同的方式来追踪和分析SQL语句的执行,从而找出性能瓶颈。 首先,了解如何查询当前正在执行语句的执行计划是至关重要的。通过`V$SQL_PLAN`视图,我们可以获取...
在介绍Oracle系统管理的知识以后,将介绍与开发相关的内容(如PL/SQL基础知识、存储过程、函数、包等),并介绍数据库性能调整,《成功之路:Oracle 11g学习笔记》重点介绍SQL语句调优。SQL语句调优是《成功之路:Oracle...
了解SQL语句的执行成本对于优化至关重要。通常可以通过查看执行计划来评估不同的查询策略。执行计划显示了数据库如何执行查询,包括使用的索引、JOIN类型等信息。通过对比不同查询的执行计划,可以直观地看出哪种...
Oracle性能调优是数据库管理员和开发人员关注的重要领域,它涉及到如何优化数据库系统以提高查询速度、减少资源消耗,从而提升整体应用性能。本资料集是作者精心整理的Oracle调优笔记,涵盖了一系列实用的调优技巧和...
### Oracle学习笔记精要 ...以上是Oracle学习笔记中的关键知识点总结,涵盖了SQLPLUS的基本命令、SQL语句的结构、SELECT语句的使用技巧等多个方面,旨在帮助初学者快速掌握Oracle数据库的基础操作和查询技术。
│ Oracle学习笔记.pdf │ Oracle学习笔记.wps │ 安装Oracle后myEclipse不能正常使用.txt │ 手工配置listener.ora【避免出现ORA-12514错误】.txt │ 贴子树状态存储结构.jpg │ 贴子树状态存储结构.sql │ ├─01...
这个"oracle sql语句学习"资源包显然旨在帮助初学者逐步提升到高级水平,通过全面的笔记资料,使用户能够从基础概念到复杂操作都能熟练掌握。 首先,我们从基础开始。SQL,全称Structured Query Language(结构化...
1. **查询优化**:Oracle数据库通过查询优化器来确定执行SQL语句的最佳方式。它分析不同的执行计划,并选择成本最低的一个。了解如何使用EXPLAIN PLAN,SQL Trace,以及 tkprof 工具来分析查询性能至关重要。此外,...
执行计划是Oracle数据库为了执行SQL语句而设计的一种详细步骤,它决定了数据如何被检索、排序、连接以及过滤。了解执行计划可以帮助我们找出SQL性能瓶颈,并针对性地进行优化。在Oracle 10g Express Edition中,这个...
6. **性能监控与调优**:使用性能监视工具,分析并优化数据库性能。 7. **高级特性**:如视图、存储过程、触发器、游标等的使用。 8. **实战项目**:通过实际案例,将理论知识应用于解决实际问题。 通过深入学习这...
Oracle笔记(PL-SQL)是关于数据库管理和编程的一个重要主题,主要聚焦于Oracle数据库系统中的结构化查询语言(SQL)的扩展——PL/SQL。PL/SQL是一种过程化语言,结合了SQL的功能,使得开发者能够编写复杂的数据库应用...
这篇笔记主要聚焦于"玩转Oracle学习笔记(四)",作者通过文档分享了他在数据库管理、查询优化、数据处理等方面的经验。以下是对这些知识点的详细解析: 1. 数据库创建与连接: - Oracle数据库的安装与配置:学习...
11. **性能优化**:通过分析SQL执行计划,使用EXPLAIN PLAN、DBMS_XPLAN等工具进行性能调优。 12. **数据库安全管理**:了解Oracle的身份验证、授权和审计机制,保障数据库安全。 在“韩顺平玩转oracle学习笔记(三...
精通Oracle SQL【第2版】ORACLE SQL高级编程【第二版】学习笔记
### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...
Oracle 10g SQL 学习笔记涵盖了Oracle数据库的基础知识,包括版本信息、数据库系统特点、关系型数据库结构、SQL语言、操作环境以及常见的数据库操作。以下是对这些知识点的详细说明: 1. **Oracle 9i基础知识**: ...
此外,你还会接触到性能优化,包括分析与调整SQL语句、使用Explain Plan分析执行计划、优化表和索引设计等。 在安全和权限管理上,Oracle11g提供了一套完善的角色和权限机制,通过GRANT和REVOKE语句来分配和撤销...