【Oracle 世界一等公民视图】 认识 v$segment_statistics
在 MOS 上发了SR、问 v$segment_statistics 是如何更新的? Oracle 答曰:v$segment_statisitcs自 9IR2 引入以来、仅用作 internal research【这回答、坑爹嘛】 ㈠ 先看表结构:sys@ORCL> desc v$segment_statistics Name Null? Type ----------------------------------------------------- -------- ------------------------------------ OWNER
深入理解Oracle索引(13):位图连接索引基础介绍
和 Bitmap Index 建立在单个 table 上不同、Bitmap Join Index 是基于多表连接的 较普遍的用法是事实表的外键列和相关的维度表的主键列的连接操作 或许有朋友对啥是事实表和维度表有点迷糊哈、这里简单谈谈 Rocky 的观点: 首先、我认为、这俩是数据仓库的东东 其次呢、 ● 事实表:你要关注的内容、比如高考状元&nb
监听器错误处理一则:主机名和IP错位
报错信息如下:[oracle@odd ~]$ lsnrctl status LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 01-MAY-2013 15:40:54 Copyright (c) 1991, 2005, Oracle. All rights reserved. Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) TNS-12560: TNS:protocol adapter error TNS-00530: Protocol adapter error Linux Error: 113: No route to host netca 报错信息截图如下: [root@odd ~]# hostname -f odd.example.com [root@odd
深入理解 Oracle 分区(1):如何实施和评估分区
虽然本博文旨在引导大家生产环境如何建立分区 但千万别被一些所谓的设计指南、特别是一些绝对值建议而把自己作茧自缚 生产环境当慎独! 不过、照葫芦画瓢、总比没葫芦乱画一通要强吧 那么、我们从分区索引和分区表来展开 ㈠ 分区索引的设计指南 ① 如果表分
最简单的查询表空间的使用量、剩余量的方法
比起用其它的视图写长长的一段脚本、简便多了、据说从7.x到11g都可以用 sm$ts_used & sm$ts_freeidle> select * from sm$ts_used; TABLESPACE_NAME BYTES ------------------------------ ---------- SYSAUX 256573440 UNDOTBS1 8323072 USERS 3211264 SYSTEM 506789888 EXAMPLE
深入理解Oracle索引(9):不要过分依赖 HINT
很多应用开发人员、特别是技术大拿、喜欢通过 HINT 强制Oracle CBO按自己的意志选择执行计划 Rocky 窃以为、这种策略在某种程度上其实是把双刃剑 使用 Hint 指定 Index 的时候需要慎重、如果不合适或者无效、可能画蛇添足、效率更低 摘自官方文档:If the INDEX hint specifies no indexes, then the optimizer considers the cost of a scan on each available inde
深入理解Oracle索引(8):如何进行索引监控分析和优化
在生产环境、我们会发现: ① 索引表空间 I/O 非常高 ② "db file sequential read" 等待事件也比较高 这种迹象表明、整个数据库系统、索引的读写操作比较多、已经成为系统的主要瓶颈 一般的原因、大抵如下: ① 大量SQL均采用索引 ② DML操作导致索引维护工作量暴增 ③ 频繁DML导
Oracle 静默安装简要的注意事项
静默安装的环境配置和图形化安装是一样的、这里不赘述了 主要提几点: ① 各 response 文件在下载的软件包 "/database/response/" 里 主要是:Oracle 软件安装请根据需要自己修改 enterprise.rsp 实例的搭建则参考 dbca.rsp&nb
Linux 下 Oracle 开机自启动配置
㈠ 修改/etc/oratab的值为Y [root@Rocky ~]# cat /etc/oratab orcl:/u01/app/oracle/product/10.2.0/db_1:Y ㈡ 修改dbstart的ORACLE_HOME_LISTNER,使其指向$ORACLE_HOME [root@Rocky bin]# pwd /u01/app/oracle/product/10.2.0/db_1/bin [root@Rocky bi
Oracle 9i 、 10g 、 11g 软件和补丁的下载地址
Oracle9i Database Release 2 Enterprise/Standard/Personal Edition for Windows NT/2000/XPhttp://download.oracle.com/otn/nt/oracle9i/9201/92010NT_Disk1.ziphttp://download.oracle.com/otn/nt/oracle9i/9201/92010NT_Disk2.ziphttp://download.oracle.com/otn/nt/oracle9i/9201/92010NT_Disk3.zipOracle9i Database Release 2 Enterprise/Standard/Personal/Client Edition for Windows XP 2003/Windows Server 2003 (64-bit)http://download.oracle.com/otn/nt/oracle9i/9202/92021Win64_Disk1.ziphttp://download.oracle.com/o
Oracle 隐藏参数:_undo_autotune、一个吃力不讨好的活
虽然谈论那些隐藏的参数必定是无意义的、但那些隐藏的参数却是有价值的、我们不得不对那些隐藏的参数"心怀敬意" AUM下、为什么我的Undo表空间只增长,不回收,现在都40多G了,还在长,是为什么啊? 为什么在系统不是很繁忙的时候会出现undo不够用的情况呢,如果说不够用,那在
select any dictionary和select_catalog_role
9I的OEM在连接10G的数据库的时候有一个BUG: ORACLE连接时提示:你必须具有select any dictionary权限才能运行此应用程序,请要求DBA为你赋予此权限 select_catalog_role角色:拥有访问包括sys模式中的表的数据库中的所有表 select any dictionary权限: 这个是读取数据字典的权限
索引的小知识点:create index
There is no CREATE INDEX privilege、but still CREATE ANY INDEX existed CREATE TABLE includes the CREATE INDEX and the ANALYZE commands、
深入理解Oracle表(7):10种表类型的数据存储和适用场景浅析
本博文Think主要从两个问题着手: ① 在哪些情况下某种类型的表比其他表类型更适用? ② 不同类型的表其数据是如何组织和存储的? 闲言少叙,一家之言,欢迎拍砖: ㈠ 堆组织表  
深入理解Oracle表(6):堆组织表(HOT)和索引组织表(IOT)的区别
㈠ HOT和IOT的起源 堆组织表的存储速度因为不用考虑排序, 所以存储速度会比较快. 但是要查找符合某个条件的记录, 就必须得读取全部的记录以便筛选. 而这个时候为了加快查询速度, 索引就出现了, 索引是针对少量特定字段的值拿出来进行排序存储, 并记录在表中的位置, &
针对Oracle用户的Linux高级命令详解之文件操作篇
⑴ 轻松更改所有者,组和权限 下面Think将分别介绍chmod chown chgrp之如何轻松更改所有者,组和权限 假设有如下几个文件:[root@bogon Desktop]# ls -l 总计 4 -rw-r--r-- 1 root root 0 02-07 10:21 a -r-x-w--w- 1 root root 0 02-07 10:22 b -rw-rw-rw- 1 root root 0 02-07 10:22 c -rw
深入理解Oracle索引(4):optimizer_index_cost_adj详解
如果哪天你遇到特殊的情况,比如系统数据字典的索引坏了,但是你去没有办法去修改这个索引,因为有些系统内部的东西你是动不了的 你就会说“我要是能绕过这个索引,全部走全表扫描,把库里的数据全部导出来该多好啊” 那么,这个时候,optimizer_index_cost_adj就很有用了
深入理解Oracle表(5):三大表连接方式详解之Hash Join的定义,原理,算法,成本,模式和位图
Hash Join只能用于相等连接,且只能在CBO优化器模式下。相对于nested loop join,hash join更适合处理大型结果集 Hash Join的执行计划第1个是hash表(build table),第2个探查表(probe table),一般不叫内外表,nested loop才有内外表 Hash表也就是所谓的内表,探查表所谓的外表 两者的执行计划形如: &nb
深入理解Oracle索引(1):INDEX SKIP SCAN 和 INDEX RANGE SCAN
㈠ Index SKIP SCAN 当表有一个复合索引,而在查询中有除了索引中第一列的其他列作为条件,并且优化器模式为CBO,这时候查询计划就有可能使用到SS Skip scan会探测出索引前导列的唯一值个数,每个唯一值都会作为常规扫描的入口,在此基础上做一次查找,最后合并这些查询 例如
索引的Selectivity
选择性,表示一个行集当中的一小部分行 这个行集可以是基表,视图,或者一个join的结果集,或者一次group by操作 选择性受限于查询谓词,比如,last_name=\'Smith\',或者一个联合谓词,比如,last_name=\'Smith\' ADN job_type=\'Clerk\' 一个谓词就像一个过滤器,从行集当中过滤掉某些行 &nb