Oracle技术嘉年华的一个案例,redo的那些事,连载三
电梯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,
Oracle技术嘉年华的一个案例,redo的那些事,连载二
电梯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
Oracle技术嘉年华的一个案例,redo的那些事,连载一
电梯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。在大会上
利用函数索引,优化因cluster factor过高导致不走索引一例
在生产环境出现一件怪事,一个查询,按照日期生成查询,而且,查询的结果集占总数据量的比重也很小,但这个查询确不走索引扫描,见下例: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
Oracle11g,没有统计信息时,表的Card从哪来?
来源于这个问题: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
遭遇Bug 5918642
nagios监控报告一台数据库服务器last_call_et超过设定阈值,等待事件为latch free。该数据库版本为10.2.0.1,操作系统为HP-UX 11.23 IA64查找v$session.p2,代码为127,具体latch为simulator lru latch[@more@]Bug 5918642 Heavy latch contention with DB_CACHE_ADVICE on This note gives a brief overview of bug 5918642. The content was last updated on: 01-APR-2008 Click here for details of each of the sections below.Affects:Product (Component)Oracle Server (Rdbms)Range of versions believed to be affectedVersions
RAC环境归档NFS挂载方式RMAN备份错误
存储进行了切换,院线保存在本地磁盘的归档空间迁移到存储中,并分别mount在两个节点,备份节点通过NFS将另一个节点的归档空间mount备份归档日志时发生错误RMAN-3009: failure of backup command on t1 channel at 09/21/2011 11:40:01ORA-19504 : failed to create file "/wdyx_arch2/2_25_762322937.dbf"ORA-27054 : NFS file system where the file is created or resides is not mounted with correct options按照说明是mount时的参数不正确,但归档空间在本地时使用的是相同的参数,并且,使用Oracle建议的参数mount还是同
执行计划问题导致处理速度时快时慢的问题
今天百货那边同事反映,在前台销售商品时,出现了时快时慢的情况,一个小票的打印时间,从零点几秒到100多秒不等,如果哪个顾客赶上了,可能买一包方便面都会等2分钟。这个情况已经持续了两三天了由于此系统前段时间由单机转为了RAC,同事怀疑因为RAC的配置或是IO问题导致了这种情况。确实,对于非数据库的很多情况,IO负载的轻重变化确实容易导致时快时慢的现象。做AWR麻烦,直接登录到数据库中看,有一个SQL在v$session中比较容易出现db sequence read等待,直接看v$sql,有两个child number,其中有一个child_number等于3的SQL buffer_
SCSI error : <1 0 1 1> return code = 0x10000
由于存储光纤交换机重新做了配置,并保存了配置信息,导致所有连接此交换机的系统全部报错:Linux:Jun 13 17:51:01 bhcx kernel: SCSI error : <1 0 1 1> return code = 0x10000Jun 13 17:51:01 bhcx kernel: end_request: I/O error, dev sdg, sector 98990423Jun 13 17:51:01 bhcx kernel: SCSI error : <1 0 1 1> return code = 0x10000Jun 13 17:51:01 bhcx kernel: end_request: I/O error, dev sdg, sector 98990431Jun 13 17:51:39 bhcx kernel: SCSI error : <1 0 1 1> return code = 0x10000Jun 13 17:51:39
ORA-00600: internal error code, arguments: [kcbz_check_objd_typ_3]
今天在做数据库例检时,alert.log文件中出现如下错误:Thu Jun 9 09:00:27 2011Errors in file /u01/app/oracle/admin/xxxx/bdump/xxxx2_m001_577740.trc:ORA-00600: internal error code, arguments: [kcbz_check_objd_typ_3], [0], [0], [1], [], [], [], []查了一下,有如下BUG:NBBugFixedDescription725104911.2.0.2, 12.1.0.0Corruption in bitmap index introduced when using transportable tablespacesV10020002 V10020003 V10020004 V10020005 V11010006 V11010007 V11020001 BITMAP CORR/IND ERROR OERI TRANSPORT WRONGRES +
装nagios报You don't have permission to access /nagios/ on this server. 错误
没装PHP导致rpm -Uvh php-5.1.6-23.2.el5_3.x86_64.rpm php-cli-5.1.6-23.2.el5_3.x86_64.rpm php-common-5.1.6-23.2.el5_3.x86_64.rpm gmp-4.1.4-10.el5.x86_64.rpmapachectl stopapachectl start 问题解决[@more@]
Action Script for resource 'ora.xxxx.xxxx2.inst' stdout redirection failed for
2011-05-31 10:06:11.360: [ CRSEVT][12232]32CAAMonitorHandler :: 0:Action Script for resource 'ora.xxxx.xxxx2.inst' stdout redirection failed for `/u01/app/oracle/crs/crs/log/startAXUlaa.stdout` : No such file or directory查了一下,只有一个类似的BUGBug 4598992 "Action script for resource 'ora.xxx.vip' stdout redirection" errors in crsd.logFixed:This issue is fixed in11.2 (Future Release) 10.2.0.4 (Server Patch Set) 而这台服务器的版本是10.0.2.1,升级真的很重要[@more@]
10G rac crsd.log :th_select_handler: Failed to retrieve procctx from ht
crsd.log中出现2011-05-31 09:51:31.372: [ OCRSRV][3605]th_select_handler: Failed to retrieve procctx from ht. constr = [357257968] retval lht [-27] Signal CV.2011-05-31 09:51:37.213: [ OCRSRV][3605]th_select_handler: Failed to retrieve procctx from ht. constr = [387231440] retval lht [-27] Signal CV.2011-05-31 09:52:12.070: [ OCRSRV][3605]th_select_handler: Failed to retrieve procctx from ht. constr = [357257968] retval lht [-27] Signal CV.2011-05-31 09:52:12.986: [ OCRSRV][3605]th_select_han
HP-UX开源同步工具rsync
有一个维护的生产环境需要每日自动将rman备份结果集及archive log转移至别的磁盘,如果使用cp,需要先将目的删除,然后再从源拷贝至目的。浪费很多IOrsync可以增量的进行备份,并且,如果源删除了文件,也可以在同步的过程中自动在目的端进行删除http://hpux.connect.org.uk/hppd/hpux/Networking/Admin/rsync-3.0.8/需要注意的是,rsync需要gettext、libiconv、popt的支持,在上面链接的Run-time dependencies有对应的链接[@more@]
我发现的BUG Bug 12412766
第一次自己发现的并且被Oracle确认的BUG,Bug 12412766庆祝一下。呵呵[@more@]
Bug 4511371
遭遇Bug 4511371建立了一个DBMonitor的库,11.2.0.2的,想通过这个库访问被管理的库 10.2.0.1,触发了这个BUGSQL> select t.dbid, t.instance_number, t.snap_id2 from sys.wrm$_snapshot@dbl_c001 t3 where to_char(t.begin_interval_time, 'DD HH24') = '28 07';DBID INSTANCE_NUMBER SNAP_ID---------- --------------- ----------2795737348 1 31628SQL> select *2 from table(dbms_workload_repository.awr_report_html@dbl_c001(2795737348,3 1,4 31628 - 1,5 31628));select **第 1 行出现错误:ORA-04052: 在查找远程对象 SY
10g与11g在处理 >= nvl(:b1,0) and <= nvl(:b2,0)的不同表现
SQL> create table t as select * from dba_objects;表已创建。SQL> create index t_idx on t(object_id);索引已创建。SQL> exec dbms_stats.gather_table_stats(user,'T',null,null);PL/SQL 过程已成功完成。SQL> var b1 number;SQL> var b2 number;SQL> exec :b1:=null;PL/SQL 过程已成功完成。SQL> exec :b2:=null;PL/SQL 过程已成功完成。先看看在10g下的表现,10.2.0.4以下SQL_ID 66gnjuyzgnhv3, child number 0-------------------------------------select * from t where t.object_id >= nvl(:b1,0) and
table statistics lock
今天在检查刚接手的DB的AWR报告时发现一个SQL Gets很大,于是进行tunning,看了一眼user_tables,发现这个表的last_analyzed居然是2007年的,很奇怪,这个表应该是在不断的进行修改,并且,数据库是Oracle 10g,自动收集统计信息的任务也没有关闭,为什么没有更新统计信息呢?查看dba_tab_modification表,也没有发现任何有关于这个表的记录,奇了不管他,直接收集统计信息,这下发现问题了[@more@]SQL> exec dbms_stats.gather_table_stats(user,'XXX',method_opt => 'for all indexed columns',cascade => true,degree => 2
RAC环境下crsd.log的两个问题
新接手一个RAC环境,版本x86_64 Oracle 10.2.0.1,crsd.log频繁的出现警告,内容如下:2011-04-18 11:42:13.820: [ OCRSRV][1273047392]th_select_handler: Failed to retrieve procctx from ht. constr = [-1734320976] retval lht [-27] Signal CV.2011-04-18 11:42:15.076: [ CRSEVT][1545783648]0CAAMonitorHandler :: 0:Action Script for resource 'ora.bhcx_rac1.LISTENER_BHCX_RAC1.lsnr' stdout redirection failed for `/u01/app/oracle/product/10.2.0/crs/crs/log/startv1uXRJ.stdout` : No such file or directory2011-04-18
EXP-00079 EXP-00091
刚接手一个使用exp/imp进行备份的系统,查看备份日志时发现如下错误EXP-00079: Data in table "BILLMKTDETAIL" is protected. Conventional path may only be exporting partial table.. . exporting table BILLMKTDETAIL 21793 rows exportedEXP-00091: Exporting questionable statistics.EXP-00091: Exporting questionable statistics.[@more@]对于EXP-00079,Metalink Doc ID 277606.1的解决方案有三种:1. Run a DIRECT path export (Oracle8i and above), while connected as a user who has the