• 博客访问: 491082
  • 博文数量: 126
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-05 11:19
个人简介

暂无介绍

文章分类

全部博文(126)

文章存档

2014年(6)

2013年(13)

2012年(10)

2011年(35)

2010年(48)

2007年(4)

2006年(2)

2005年(2)

2004年(6)

我的朋友

发布时间:2011-10-31 16:15:37

电梯Oracle技术嘉年华的一个案例,redo的那些事,连载一Oracle技术嘉年华的一个案例,redo的那些事,连载二在上一篇中,修改row flag后,logminer已经可以正确的解析日志了,那么,这个问题是否可以重现呢?我们来做个测试。由于没有9i环境,我们使用11g环境进行测试,测试结果稍微有些偏差,但不影响结论首先,我们建立varchar2(4000)类型的三条数据,然后,对这三条数据进行修改,将4000字节全部占满,那么,必然有一条记录将发生迁移。SQL*Plus: Release 11.2.0.3.0 Production on Fri Oct 28 08:34:33 2011Copyright (c) 1982, 2011, ......【阅读全文】

阅读(1022) | 评论(0) | 转发(0)

发布时间:2011-10-31 10:09:36

电梯Oracle技术嘉年华的一个案例,redo的那些事,连载一Oracle技术嘉年华的一个案例,redo的那些事,连载三前篇的结论是,由于没有开启附加日志,导致这条记录无法正确的解析。那么进一步,到底是什么原因导致这条记录不能得到正确的解析呢?决定进一步探究一下我们再来看一下logfile dump的结果,在eygle大师的PPT里,信息并不完整,下面是完整的信息:REDO RECORD - Thread:1 RBA: 0x00309e.00028b4d.0010 LEN: 0x0114 VLD: 0x01SCN: 0x0001.4be86fb9 SUBSCN: 1 07/05/2011 16:41:54CHANGE #1 TYP:0 CLS:22 AFN:2 DBA:0x00801542 OBJ:0......【阅读全文】

阅读(1165) | 评论(0) | 转发(0)

发布时间:2011-10-31 10:08:11

电梯Oracle技术嘉年华的一个案例,redo的那些事,连载二Oracle技术嘉年华的一个案例,redo的那些事,连载三在刚刚结束的Oracle技术嘉年华大会上,eygle大师的演讲中提到了有关于数据安全的一个案例,大致的意思是数据库管理员修改了自己账户的金额。但是,奇怪的是,通过logminer挖掘日志时,居然挖掘不到修改记录,显示如下状况: 2011-10-31 09:38 上传下载附件 (50.08 KB) SQL_REDO的内容是Unsupported,但是,通过logfile dump,可以看到此次修改,如下图: 2011-10-31 09:38 上传下载附件 (44.58 KB) 将金额从0修改为40000。在大会上......【阅读全文】

阅读(1126) | 评论(0) | 转发(0)

发布时间:2011-10-31 09:10:59

在生产环境出现一件怪事,一个查询,按照日期生成查询,而且,查询的结果集占总数据量的比重也很小,但这个查询确不走索引扫描,见下例:SQL> select count(*) from ttm_temp_order t; COUNT(*)---------- 729465总行数为70多万条SQL> select count(*) from ttm_temp_order t where t.order_time>=trunc(sysdate)-2; COUNT(*)---------- 6076查询两天内的数据只有6000多条,理应走索引扫描SQL> exec dbms_stats.gather_table_stats(user,'TTM_TEMP_ORDER',null,null,method_opt => 'for all indexed columns siz......【阅读全文】

阅读(1456) | 评论(0) | 转发(0)

发布时间:2011-10-25 16:25:52

来源于这个问题:http://www.itpub.net/thread-1503855-1-1.html表没有统计信息时,Cardinality从哪里来?做个试验:SQL> alter system flush shared_pool;系统已更改。SQL> create table t as select * from dba_objects where rownum<10001; 表已创建。SQL> insert into t select * from dba_objects where rownum<10001;已创建 10000 行。SQL> /已创建 10000 行。SQL> commit;提交完成。SQL> select count(*) from t; COUNT(*)---------- 30000SQL> select t.num_rows,t.blocks from user_tables t w......【阅读全文】

阅读(1140) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册