Tuning 12 manage statistics
这个 stattistics 对解析 sql 时的优化器有很重要的作用, 优化器是基于 statistics 来进行优化的.
desc dbms_stats 包也可以 desc (早期使用 analyze table 之类的)
实验:
我们创建一个新表在HR这个 schema 里, 比如 create table t ( id int, name varchar2(10));
创建完以后, 我们插入 3 条记录. 并 commit;
然后我们查询 DBA_TABLES 这个数据字典, 注意, 虽然我们能够查询到这个数据字典中包含 t 这个table, 但是这个table有多少行和多少block, 这些信息是空的, 因为这个表我们刚刚创建, 还没有更新信息, 所以我们使用:
exec dbms_stats.gather_table_stats(‘hr’,’t’); -- 这样就搜集了 hr这个用户下 t 这个表的信息
然后我们在去看 dba_tables 中的内容, 这时候 这个table有多少行和多少block就显示出来了.
那么这些 statistics 信息对优化器有什么作用呢, 比如刚刚我们创建的表, statistics显示只有3条记录, 那么优化器基于这个信息就可以放弃索引, 直接全表扫描.
以上这些表, 都是10g 以后才有的.
就是默认的 oracle 自己运行的动态的更新 statistics 信息.
Tuning 12 manage statistics的更多相关文章
- Wait statistics, or please tell me where it hurts
https://www.sqlskills.com/blogs/paul/wait-statistics-or-please-tell-me-where-it-hurts/ By: Paul Rand ...
- 【译】The Accidental DBA:Troubleshooting
最近重新翻看The Accidental DBA,将Troubleshooting部分稍作整理,方便以后查阅.此篇是Part 3Part 1:The Accidental DBA:SQL Server ...
- Oracle11g温习-第十七章:权限管理
2013年4月27日 星期六 10:50 1.权限(privilege): [system privilege(系统权限):针对于database 的相关权限 object p ...
- Optimizing Oracle RAC
Oracle Real Application Clusters (RAC) databases form an increasing proportion of Oracle database sy ...
- vmware目录2
http://www.globalknowledge.com/training/course.asp?pageid=9&courseid=17880&country=United+St ...
- 很好的vmware目录
http://www.globalknowledge.com/training/course.asp?pageid=9&courseid=18023&country=United+St ...
- 第二章 持续集成jenkins工具使用之系统基本设置
Jenkin系统初始化成功后,会进入用户设置页面,设置用户信息后即可进入系统,如果没有设置用户,jenkins系统默认的用户是admin,密码administrator 1.1 Con ...
- oracle xmltype导入并解析Excel数据 (三)解析Excel数据
包声明 create or replace package PKG_EXCEL_UTILS is -- Author: zkongbai-- Create at: 2016-07-06-- Actio ...
- oracle xmltype导入并解析Excel数据--前言
通常,很多的时候,我们需要导入Excel数据到系统中,但是Excel数据需要我们去各种校验,比如身份证校验,手机号码校验等等. 校验失败的数据,提供Excel导出错误原因,提示给用户. 如此,如果校验 ...
随机推荐
- 在表单里面检查用户名是否存javascript
function CheckUser(fn) { $.get("/Pages/Handler/CheckExistHander.ashx", { "txt_UserNo& ...
- git使用 ——转
转自:http://blog.csdn.net/jamesmf/article/details/17483787
- vue - check-versions.js for semver
引入的是一个语义化版本文件的npm包,其实它就是用来控制版本的,详情见:https://www.npmjs.com/package/semver 用谷歌翻译npm文档 semver.valid('1. ...
- 【MVC5】日期选择控件DatePicker
项目中使用了Bootstrap,日期控件就选择了依赖于bootstrap的DatePicker. 在App_Start\BundleConfig.cs中引用css和js文件: bundles.Add( ...
- Android Freeline加速编译App方案 使用和总结
Freeline简单介绍 在Android Studio还没推出Instant Run功能之前,每次改动Android project项目时都要将整个项目又一次编译一次,然后再将资源和代码文件打包成A ...
- 小程序show-confirm-bar完成按钮不能隐藏
<textarea>show-confirm-bar="false"></textarea> 不生效怎么办>? 改成 show-confir ...
- 为什么用strlcpy取代strncpy
为什么用strlcpy取代strncpy 标签: C, C语言, strlcpy, strncpy 标题: 为什么用strlcpy取代strncpy作者: Demon链接: http://demon. ...
- hibernate session的load和get方法
@Test public void testLoad() { Session session = sessionFactory.getCurrentSession(); session ...
- RxJava API使用示例
概述 RxJava API示例代码,可离线查看rxjava1.0大部分API的marble图,描述,示例代码,并支持示例代码实时输出及展示执行结果. 详细 代码下载:http://www.demoda ...
- mac 安装2个xcode 时会导致找不到xcodebuild
mac 安装2个xcode 时会导致找不到xcodebuild 解决方案: sudo xcode-select --switch /Applications/Xcode.app/Contents/D ...