Quantcast
Channel: ORACLE数据库服务热线:400-690-3643 诗檀软件 » /Oracle/RDBMS – ORACLE数据库技术文刊-汇聚全世界的甲骨文技术 – ParnassusData诗檀软件旗下网站
Browsing all 10 articles
Browse latest View live

如何从SQL文本得到SQL_ID和HASH值

首先根据数据库字符集对SQL文本进行编码,注意Oracle数据库使用两个字符集:数据库字符集和国家字符集,在这里请不要去找国家字符集,不关它什么事。然后对编码后的数据进行MD5摘要,最后根据Slavik给出的逻辑计算。在SQL_TEXT,HASH_VALUE和SQL_ID的关系的研究上,Tanel Poder和Slavik Markovich这两位朋友是很是用心。 No related posts.

View Article


字段(列)使用度监控

字段使用度监控主要功能是当字段作为WHERE条件/JOIN条件的一部分出现时,就做一下记录,这个记录最终会流向数据字典。总而言之打开了这个功能Oracle可以知道字段在WHERE语句中的受欢迎程度。如此,每次在相关表上收集统计信息的时候,字段直方图自动直方的数量就会受到影响。一般而言,越受欢迎的字段,自动直方的数量就会提高。我将做一个演示,用来清楚地观察监控对统计收集的影响。演示中我会使用到一个脚本...

View Article


Image may be NSFW.
Clik here to view.

Adaptive Cursor Sharing Test (11.2)

There are 1000000 rows in SST.CARD table, column CARD.C01 have two distinct values: 0.1 and 0.The cardinality of 0.1 is 1000, 0 is 999000 respectively. Statistics with histogram is fresh.Bind variable...

View Article

Image may be NSFW.
Clik here to view.

自适应式游标共享测试(11.2)

一张100万行的表: SST.CARD,字段CARD.C01只有两个值:0.1和0。值为0.1的行有1000行,而值为0的行有999000行。各统计和直方皆就位没有问题。测试使用帮定变量:id,当:id等于0.1并且WHERE里使用C01=:id时执行计划因该使用索引;当:id等于0时因该使用全表扫描。#首次尝试,使用"c01=0.1"; 执行计划使用索引扫描。SYS@br//scripts>...

View Article

什么是Oracle Past Image(pi)

Past Image是一种RAC环境中脏缓冲块的状态,是集群中不同实例对同一个数据缓冲块写而又写后的间接结果。简而言之,Past Image是一种特殊的脏数据块,它保留了前一次更改后的样子。浪漫些,它是一个残像。针对一个特定的数据块,每一个实例最多只能有一个残像(pi)。实例间争夺、修改热块很容易观察到Past...

View Article


BUFFER SORT是BUFFER却不是SORT

用AUTOTRACE查看执行的计划的同学常问到执行计划里的BUFFER SORT是什么意思,这里为什么要排序呢? BUFFER SORT不是一种排序,而是一种临时表的创建方式。BUFFER是执行计划想要表达的重点,是其操作: 在内存中存放一张临时表。SORT修饰BUFFER,表示具体在内存的什么地方存放临时表:...

View Article

2月29日今天你报错了吗?

Ping一下自己的Blog: 当前时间2012年2月29日,趁这时机闲来无事将所有和DATETIME有关的脚本干跑了一下,果然有个小小的礼物。具体脚本就不现丑了,用以下两个查询表现一下吧: SQL1: select sysdate - interval '1' year from dual; 你感觉这SQL能执行吗?ORA-01839 等着你。 SQL2: select sysdate -...

View Article

SQL操作“ALL”,遇空得真

ALL是处理多行子查询的操作符,>ALL、>=ALL、<ALL、<=ALL、=ALL、!=ALL在处理空的子查询结果集时会让外部查询的WHERE子句返回TRUE。以一个简单的使用“=ALL”的查询为例:select employee_id,last_name,department_id  from hr.employees   where department_id =ALL...

View Article


Oracle11g 数据库恢复技术补充 No.1 – ASM文件名的时间戳

ASM文件名以一个时间戳结尾,其单位为秒,含义为相对1987年7月21日零点的offset。该时间戳于ASM文件创建时敲上,因此将数据库的文件从RMAN备份中还原至ASM磁盘组时需要注意文件名由时间戳引起的自动变化。请关注example数据文件:SQL> select name from...

View Article


展示单表外键信息的一个简单脚本

监考的时间比较难熬,像灌了铅一样。同学们又不用问题来骚扰我,加上心情突然不是最佳,于是写了个脚本,儿子找爸爸的,好玩而已。运行的结果像这样: SYS@fmw//Scripts> @showfkparent hr employees---------------|             ||DEPARTMENT_ID|...

View Article
Browsing all 10 articles
Browse latest View live