整个MySQL Server由以下组成1:连接池组件2:管理服务和工具组件3:SQL接口组件4:查询分析器组件5:优化器组件6:缓冲池组件7:存储引擎8:物理文件存储引擎是MySQL区别于其他数据库最大的特点。几乎所有数据库都有SQL分析器和优化器但是存储引擎是MySQL特有的。存储引擎是底层物理结...
分类:
数据库 时间:
2014-09-17 13:28:32
阅读次数:
301
oracle 的优化器: oracle 有两种优化器:基于规则的优化器(rbo/rule based optimizer)和基于代价的优化器(cbo/cost based optimizer).有时、表明明建有索引,但查询过程显然没有用到相关的索引,导致查询过程耗时漫长,占用资源巨大,问题到底出在哪...
分类:
数据库 时间:
2014-09-17 08:54:11
阅读次数:
333
数据库性能优化
相关书籍:
1.基于成本的Oracle优化法则
2.Oracle性能诊断艺术
3.基于Oracle的SQL优化
-----------------------------------------------------------------------------------------
两种优化器:
CBO cost-ba...
分类:
数据库 时间:
2014-09-16 23:49:41
阅读次数:
567
这一节主要讲述索引的使用,首先介绍怎么在查询中避免使用索引,然后介绍优化器怎么判断是否使用索引,并介绍了强制使用索引的方法,最后介绍了Oracle的并行处理方法。
避免使用索引
虽然你创建了索引,但有些查询你可能需要避免使用这些索引,或者你为了做一些测试,希望看看各种情况下查询的情况,也希望能够避免使用一些索引或者索引扫描方式。Oracle提供了方式来达到这些目地,就是在查询中使用hint信息...
分类:
数据库 时间:
2014-09-15 17:49:09
阅读次数:
352
1.优化器2.处理器3.编译器4.调度器5.路由器6.管理器7.过滤器8.分发器10.作业11.步骤12.环境13.抽取14.挂接15.总线16.输入输出IO17.模数转换但是看见这些东西,说起来感觉特专业,不过确实这些理论在计算机体系机构里面都有实现,软件上仅仅模型,比如模拟通信,模拟调度,模拟任...
分类:
其他好文 时间:
2014-09-11 22:18:42
阅读次数:
201
MySQL执行计划解读Explain语法EXPLAIN SELECT ……变体:1. EXPLAIN EXTENDED SELECT ……将执行计划“反编译”成SELECT语句,运行SHOW WARNINGS 可得到被MySQL优化器优化后的查询语句 2. EXPLAIN PARTITIONS S....
分类:
数据库 时间:
2014-09-05 12:42:21
阅读次数:
305
选择最有效率的表名顺序(只在基于规则的优化器中有效)
ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中写在最后的表(基础表 driving table)将被最先处理. 在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表.当ORACLE处理多个表时, 会运用排序及合并的方式连接它们.首先,扫描第一个表(FROM子句中最后的那个...
分类:
数据库 时间:
2014-09-03 09:40:26
阅读次数:
317
Query Transformation在继续研究SQL的其他操作(比如Join)对CBO的影响之前,我们来讨论一下Oracle优化器的Query Transformation特性。我们都习惯于根据我们的SQL结构来判断SQL的效率,但是我们必须要知道,对于我们写好的SQL,Oracle的优化器会进...
分类:
其他好文 时间:
2014-09-02 17:36:05
阅读次数:
473
SQL语句执行时,Oracle的优化器会根据统计信息确定表的访问方式,一般来说,有两种基本的数据访问方式:1)全扫描。在全扫描(全表扫描或者快速全索引扫描)中,多个块被读入到一个IO运算中。2)索引扫描。索引扫描首先扫描索引叶子块以取得特定的行id(rowid),然后利用这些行id来访问父表取得实际的行数据,访问通过单块读取来完成。这里主要讲解全扫描方式,后面将介绍索引扫描。
使用全扫描
当对...
分类:
数据库 时间:
2014-09-01 17:49:53
阅读次数:
394
SQL的执行计划实际代表了目标SQL在Oracle数据库内部的具体执行步骤,作为调优,只有知道了优化器选择的执行计划是否为当前情形下最优的执行计划,才能够知道下一步往什么方向。
执行计划的定义:执行目标SQL的所有步骤的组合。
我们首先列出查看执行计划的一些常用方法:
1.
explain plan命令
PL/SQL Developer中通过快捷键F5就可以查看目标SQ...
分类:
数据库 时间:
2014-08-30 23:10:50
阅读次数:
462