FAQ

 

SQL相关

 

高可用性

 

诊断案例

 

内部分析

 

新技术

 

技术专题

 

Unix及其他

 

文档下载
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

数据恢复及高可用性

  • 断电故障导致 ASM DiskGroup 故障及恢复案例 July 9, 2009
    ASM在RAC环境中的使用已经极其广泛,但是往往由于对ASM的认识不够,很多时候在处理故障时会陷入谜团,前一段在客户环境中就遇到了一个ASM的棘手问题。

  • 恩墨科技为某企业提供紧急数据恢复服务 July 7, 2009
    由于数据块出现了损坏,其中的数据不可避免的遭到了损失,我们可以通过BBED等工具修复数据块,虽然可以骗过数据库,强制启动数据库,但是无法骗过自己,其中的数据难免遭到损失。

  • DataGuard ORA-01111文件创建失败问题解决 July 6, 2009
    在DataGuard环境中,由于备库的路径、存储、空间等问题,可能会导致文件创建失败的问题。

  • Export ORA-00904: "Ifreepool": Invalid Identifier June 8, 2009
    这是因为版本不一致导致的,在遇到包含LOB对象的表时触发,这是因为10.2.0.4中,管理LOB对象发生了变化,在字典中引入了一些新的字段,如'IFREEPOOL'. 10.2.0.3中不包含相应字段,在EXP时就出现了错误。

  • ORA-01157 - Mount状态下的文件存在性校验 June 5, 2009
    虽然在Mount状态,数据库并不会主动校验文件的存在性,但是会被前台进程触发,去判断文件的存在性,从而报出出错信息

  • IMP-00009 abnormal end of export file May 14, 2009
    这中情况通常是因为导出文件异常,当导如最后发现异常时,会回退所有操作。 回退在数据库处理是正常的,因为导出文件异常可能导致局部数据丢失,数据的一致性和完整性是无法确保的。 可是在用户环境下,数据是为了导入测试环境进行测试,而且导入据说花费了4个小时,漫长等待得到的是回退的答案,这在用户看来是不可接受的。

  • 如何快速找到备份过最近、最大序号的归档日志 April 23, 2009
    这里我们可以用另外一个命令:
    LIST BACKUP OF ARCHIVELOG FROM SEQUENCE seq_no [THREAD thread_no];
    选择一个合适的SEQuence号,接下来这个命令会将备份过的日志按照序号展现出来,非常便于观察。
    对于RAC环境不同的Thread可以加上不同的Thread号。


  • Oracle EXP/IMP与临时对象的管理方式 April 22, 2009
    今天做了一整天的数据导入工作,有一点点收获就是,清晰的看到了导入时临时对象的生成。 这是一个Oracle9iR2的环境,在漫长的导入过程中,系统中可以看到大量这样的临时对象,在对象创建完成之后,对象的临时属性被更改为固定.

  • RMAN结合Read Only、Exclude的备份策略 April 22, 2009
    RMAN结合Read Only、Exclude的备份策略制定,特定条件下非常有用的备份手段之一。

  • Oracle Wait Events:read by other session February 27, 2009
    这个等待也就是说明数据库存在读的竞争,所以该等待事件通常和db file sequential read或db file scattered read 同时出现。

  • Oracle Wait Events: Wait for scn ack February 22, 2009
    ACK (ACKnowledgment) 的意思是:TCP首部中的确认标志,对已接受到的TCP报文进行确认。Acknowledge Character,就是确认字符。在数字通信协议中,如果接受方成功的接收到数据,那么会回复一个ACK信号。通常ACK信号有自己固定的格式,长度大小,由接受方回复给发送方。其格式取决于采取的网络协议。当发送方接收到ACK信号时,就可以发送下一个数据。如果发送方没有收到信号,那么发送方可能会重发当前数据包,也可能停止传送数据。具体情况取决于所采用的网络协议。ACK信号通常是一个ASCII字符,不同的协议中ACK信号都不一样。

  • Oracle Database 11g回滚段命名的变化 January 30, 2009
    在处理Oracle Database 11g中,回滚段的命名规则已经和以前不同。

  • 圣诞超级复杂困难之Oracle数据库大恢复 December 25, 2008
    这个案例所用到的所有知识在我的网站上全都有详细介绍,不过要能把所有知识综合运用才能解决这次的故障,这真是圣诞节对我的一大考验!

  • Oracle Express版本的数据库选件 October 28, 2008
    Oracle的Express版本中,仅有12个选件为True,这是Oracle软件的免费产品。

  • 使用RMAN进行排除表空间备份 October 15, 2008
    在RMAN的备份中,可以通过Exclude命令排除某些不需要备份的表空间。 这样可以缩减备份的容量,对备份进行适当优化和调整。 排除某个表空间可以使用类似如下命令: configure exclude for tablespace users; 其设置可以在RMAN中通过show all命令来查看。

  • 关于Mutex的笔记 October 10, 2008
    Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可以对比之处

  • ORA-00704 与 bootstrap 错误 July 3, 2008
    一般来说,见到bootstrap错误都是很严重的故障,bootstrap过程失败数据库肯定就无法打开。很多时候bootstrap$表损坏也会导致bootstrap失败。

  • 使用Catalog命令注册RMAN备份集 June 3, 2008
    只有原库数据文件的RMAN备份集(此备份集不包含控制文件,log,参数文件等等,单纯只有数据库的所有数据文件的备份集),主库废了,如何进行恢复!

  • 使用dbms_backup_restore修改DBID May 26, 2008
    在一些特殊的情况下,我们可能需要修改数据库的DBID,有时候可能仅仅是修改控制文件的。

  • Oracle Wait Events:Data file init write April 10, 2008
    测试数据库是Oracle10g 10.2.0.3,实际上这个等待事件也是从Oracle 10g开始引入的,用来标识表空间或数据文件扩展时的等待。 Oracle 需要将系统块格式化为Oracle数据块,然后才能提供数据库使用。

  • 并行查询并行度Degree与instances 设置 April 9, 2008
    在DBA_TABLES字典表中有一个degree字段,这个字段代表并行查询在数据表上的并行度,在RAC环境中,这个参数还和实例有关。

  • resize datafile 与 checkpoint March 30, 2008
    Resize datafile会触发一个文件级检查点,今天讲课的时候和大家提到过这个,记录一下。

  • RAC环境下根据sequence恢复指定日志 February 7, 2008
    RAC环境下,可以通过如下命令来恢复备份集中的归档日志。

  • 成功恢复案例:解决字典表误Truncate故障 January 22, 2008
    这一案例的恢复过程并不重要,重要的是DBA应该学会永远不要让我们的数据库置于这样的危险境地

  • Varchar2(4000)能存多少数据? November 6, 2007
    今天一个朋友在MSN上问我,Varchar2(4000)能存多少数据? 他说他的Varchar2(4000)有的条目,用lengthb计算,达到了4046.

  • 497天是一个轮回-记Linux时钟的回转 September 17, 2007
    由于某些Linux内核使用32位无符号长整型来计算时间,32位的最大值就是0xffffffff,再加1就将溢出变为0

  • 如何加快SMON的恢复进度? September 12, 2007
    昨天提到的事务恢复问题,有人问是否真要回滚几天那么久?

  • Oracle HowTo:判断一个死事务的恢复进度 September 11, 2007
    由于死事务已经无法通过v$transaction来观察,所以必须通过内部表来进行判断。
    这个内部表是x$ktuxe,该表会记录Dead事务的恢复进度

  • 关于Shared Pool探索的补充之一 September 7, 2007
    在x$ksmsp.ksmchcls的分类中,还有两外几个分类,这几个分类是R-free/R-freea/R-perm

  • v$sql视图buffer_gets统计溢出为负数的现象 August 22, 2007
    但是最终Oracle不认为这是一个Bug,因为即使底层表x$kglob的相关值定义从KQFCINT() 变更位 KQFCUIN()。也只不过将这个限制扩大了一倍而已,这个限制早晚还会被达到。

  • Oracle ASSM三级位图块结构 July 4, 2007
    我认为BMB的结构应该是均衡的,同时段头的PAGETABLE SEGMENT HEADER同时充当了第0个3级位图块的角色。

  • Oracle10g的current_scn是如何计算的? June 21, 2007
    也就是说你不查询就不知道current_scn的值,你查询它就变化,是不是有点向薛定谔的猫的那种感觉?

  • 关于Oracle归档进程的运行机制 June 11, 2007
    真理是需要不断摸索才能发现的。

  • 关于Oracle归档进程的运行机制 June 6, 2007
    归档进程的数量是受初始化参数log_archive_max_processes控制,初始的,这个参数设置为2,Oracle启动两个归档进程

  • Oracle中独一无二的Cache对象 April 19, 2007
    这个root dba指向了1.417对象,而1.417对象的上一个对象正是bootstrap$,Oracle通过1.417找到了bootstrap$对象就可以启动了数据库。

  • LGWR与AIX上的进程优先级 March 31, 2007
    最显著的等待是LOG FILE SYNC,最终发现问题出在LGWR进程,由于该进程活动过于频繁,该进程在系统上的nice值被调至68,AIX上缺省进程nice值为60,nice值越高表示优先级越低。

  • Oracle与Linux/Unix下的时间处理 March 11, 2007
    在Linux/Unix上,Oracle在很多地方都从系统取得时间。

  • Oracle Peeking绑定变量的控制 March 7, 2007
    我们知道从Oracle9i开始,Oracle引入了Peeking of User-Defined Bind Variables的特性,这个特性可以用来在存在数据倾斜时对执行计划纠偏。 然而这一特性也可能带来一些副作用,所以Oracle同时引入了一个内部参数用于控制这一特性

  • ORA-00701 warmstarting对象的另类解决方法 February 15, 2007
    38003事件的作用是:CBO Disable column stats for the dictionary objects in recursive SQL 也就是说可以将部分对象从启动的bootstrap$需要里剥离出来,从而可以被在线rebuild.

  • Oracle10g 控制文件的改变 February 12, 2007
    前几天说过,Oracle10g Events CONTROLF的改变,当时猜测控制文件的变化可能是为了满足Oracle10g Grid运算支持大量并行实例的需要。

  • 终极恢复孰弱孰强-DUL vs AUL February 3, 2007
    其实很多时候,到达用户现场后,你就只剩下一个想法,尽快帮用户最大程度的恢复数据,因为到了最后的阶段,数据已经影响到了很多人的生活,我们能做的就是尽最大可能以最快速度进行恢复。

  • 系统对象IDL_UB1$表的含义及作用 January 17, 2007
    在ITPUB上有朋友遇到SYSTEM表空间快速扩展的问题,经过如下代码查询,可以找出系统表空间中占用空间最多的Top9对象

  • Oracle10g中SCN与TimeStamp的相互转换 January 8, 2007
    作为对于闪回操作(flashback)的一个增强,Oracle10g提供了函数对于SCN和时间戳进行相互转换。

  • DataGuard数据库服务器硬盘故障处理一则 November 28, 2006
    这两台服务器用的都是联志的国产低端PC Server,这些服务器的质量实在是差,上次一台备机的硬盘损坏,然后又有一台因为电源模块的问题反复重起,现在这一台服务器的硬盘再次出现问题。

  • DB link与检查点(checkpoint)和SCN November 8, 2006
    这种机制其实是为了满足分布式事务(Distributed Transaction)的需要,只不过这里通过db link被触发。

  • UTL_INADDR包获取ip地址的内部原理 October 26, 2006
    首先获取域名解析服务器,在根据host.conf文件确定解析顺序,因为缺省hosts文件优先,又继续读取/etc/hosts文件。 如果hosts文件存在解析关系,则返回信息;如果不存在,则继续问询DNS服务器,获得解析地址,如果不能解析,则会出错:

  • 获得Redo Block Size的非典型方法 October 17, 2006
    我以前介绍过获得redo block size的方法,当然也可以通过dbfsize工具获得。 现在在这里我想介绍的是另外一种非典型方法,有多非典型呢? 问题来自于N年前我在一个客户的机器上部署的监控脚本,现在那些脚本看来还在运行着,我最近收到了大量类似如下内容的邮件

  • 使用RMAN进行基于时间点的不完全恢复 September 17, 2006
    此时可以检查数据的正确性,如果无误就可以通过exp导出数据,再imp进生产数据库,完成恢复。 在有了充分的备份的前提下,这样的恢复是非常容易的。

  • sql.bsq与数据库的创建 August 23, 2006
    如果我们使用脚本创建数据库,那么最先运行的是一个叫做CreateDB.sql的脚本。 这个脚本发出CREATE DATABASE的命令,具体类似如下的例子:

  • 拥有归档日志 如何恢复一个丢失的数据文件 August 20, 2006
    如果拥有一个冷备份,但是缺失了其中的一个数据文件,但是存在所有的归档,应该如何恢复数据文件。

  • 备份的控制文件和新的数据文件 August 11, 2006
    我们可以想象,如果控制文件是从备份中恢复的,那么数据库在open过程中又将如何呢?

  • 关于控制文件与数据文件头信息的说明 August 11, 2006
    在上一讲中,我们说过:当我们使用file_hdrs事件来转储数据文件头信息时,Oracle会转储两部分信息,一部分来自控制文件,一部分来自数据文件,在数据库启动过程中,这两部分信息要用来进行启动验证。

  • EVENT: FILE_HDRS 的信息来源 August 10, 2006
    我们知道,可以通过一个内部事件来转储数据文件头信息,这个常用的命令是.....

  • Oracle9iR2 NF:压缩表技术 June 26, 2006
    从Oracle9iR2开始,Oracle推出了压缩表技术(table compression),用于压缩数据表中的重复数据,以节省存储空间,压缩技术倾向于在数据仓库中使用。

  • 隐含参数_disable_logging的几点说明 June 20, 2006
    在很久以前,曾经介绍过Oracle的一个内部隐含参数_disable_logging,看到有朋友论述这个参数,今天忍不住做一点补充说明.

  • 时间再次停止运行 June 16, 2006
    今天下班时,同事说,一个数据库上的Job进程不能启动,我登陆上去查看,果然,时间再次停止运行: SQL> select * from v$timer; HSECS----------4294967295 SQL> / HSECS----------4294967295 此前曾经遭遇这个Bug,当主机持续运行497 days 2 hrs 28 mins 时,数据库系统时间将会停止. Bug出现: $ uptime6:27pm...

  • Oracle热备期间的过量Redo生成控制 May 31, 2006
    我们都知道为了防止热备期间的分裂块问题,Oracle在热备过程中会对修改块进行全块的Redo记录. 偶然发现居然还存在一个隐含参数可以控制这个行为: SQL> SELECT x.ksppinm NAME, y.ksppstvl VALUE, x.ksppdesc describ2 FROM SYS.x$ksppi x, SYS.x$ksppcv y3 WHERE x.inst_id = USERENV ('Instance')4...

  • 使用10203事件跟踪Oracle块清除 April 20, 2006
    Oracle的10203事件可以用来跟踪数据库的块清除(cleanout)操作,从事件列表中,我们可以知道该时间的含义为:block cleanout 。 该事件需要在系统级设置,重启数据库后生效: SQL> alter system set event="10203 trace name context forever" scope=spfile; System altered. SQL> shutdown immediate;Database closed.Database...

  • _disable_logging如何禁用日志 April 14, 2006
    在非归档模式下(归档模式会导致日志损坏),使用_disable_logging可以禁止日志的生成,从而可以提高某些特殊操作(如批量加载或Benchmark测试等)的性能. 我们可以来看一下这个禁止是如何完成的. 启动2个Session,一个用于管理,一个用于测试. 1.Session 1 ,使用SYS用户连接数据库,当前_disable_logging未设置,数据库处于正常状态 $ sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on Fri Apr 14...

  • _disable_logging对于性能的影响 April 14, 2006
    设置了_disable_logging参数,可以禁用日志的生成,从而提高某些测试的性能. 以下测试,纯属测试目的,其他内容请参考本站其他文章: http://www.eygle.com/archives/2006/04/more_about_disable_logging.html 禁用日志情况下: SQL> connect / as sysdbaConnected.SQL> shutdown immediate;Database closed.Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started. Total...

  • 隐含参数_disable_logging的几点说明 April 14, 2006
    在很久以前,曾经介绍过Oracle的一个内部隐含参数_disable_logging,看到有朋友论述这个参数,今天忍不住做一点补充说明. 1.当然,隐含有风险,设置请谨慎. 2.最初在9.2.0.6 Solaris版本上,设置该参数会触发Bug:3868748 使得数据库无法启动. 从警告日志中,通常可以获得的错误提示是: ORA-07445: exception encountered: core dump [kcrfwcint()+1625] [SIGFPE] [Integer divide by zero] [0x828739D] [] []...

  • 关于自动PGA管理的进一步探讨 April 9, 2006
    伴随自动PGA调整新特性的引入Oracle随之引入了一系列新的视图,V$PGASTAT就是其中的一个....

  • 临时文件file#和db_files的关系 March 28, 2006
    在v$tempfile与v$sort_usage之关系解析一文中,我们注意到对于临时文件的绝对文件号(AFN),Oracle的分配规则和常规数据文件并不相同.

  • v$tempfile与v$sort_usage之关系解析 March 25, 2006
    在前面的V$TEMPSEG_USAGE与Oracle排序中我谈到V$TEMPSEG_USAGE和V$SORT_USAGE同源,其中的SEGFILE#代表的是绝对文件号(AFN).

  • LOB对象与临时段 March 25, 2006
    如果程序中使用了临时的LOB类型变量,Oracle会分配临时空间,如果并发很高,初始区很大,那么数据库可能产生严重的TEMP表空间的不足问题

  • V$TEMPSEG_USAGE与Oracle排序 March 24, 2006
    刚才Kamus说起V$TEMPSEG_USAGE这个视图,看着很眼生,我说没注意过,然后动手查一下这个东西究竟来自何方. 查询dba_objects视图,发现原来这是一个同义词。

  • 转储日志文件头 获得日志信息 March 17, 2006
    我们可以通过如下命令Dump日志文件头,获得关于Redo Log File的一些重要信息:

  • Oracle7.3.4 Checkpoint行为研究 February 20, 2006
    在不同的版本中,Oracle的检查点策略一直在不断的调整优化,而从Oracle7之后,Oracle不在文档中透漏更多的信息给我们.

  • 如何解决Ora-00600 4194错误 February 13, 2006
    4194错误通常说明UNDO段出现问题,最好的办法是通过备份进行恢复,如果没有备份,那么可以通过特殊的初始化参数进行强制启动

  • DBWR enhancements In Oracle10g II February 8, 2006
    我们注意到,在Oracle9iR2中,和DBWR相关的统计事件有12个

  • DBWR enhancements In Oracle10g February 7, 2006
    为了避免DBWR不必要的唤醒及过于活跃,从Oracle10g开始,Oracle对DBWR的SCAN间隔进行了调整.

  • 为何而心跳-Oracle Heartbeat研究之二 January 27, 2006
    这说明Heartbeat并非在数据库Open状态下才会更新,也说明HeartBeat是用来维持实例的Mount状态检测.

  • Oracle7.3.4数据库已经启动 January 26, 2006
    今天调整了一下,手工建立了一个数据库,顺利启动了Oracle7的数据库

  • 谁能帮忙提供Oracle7 For NT的版本 January 25, 2006
    哪位朋友还有Oracle7.3 For Nt版本的数据库,能否帮忙提供一个,急需该版本进行一些测试.

  • Oracle的X$表系列介绍之-X$KCCCP January 24, 2006
    X$KCCCP--[K]ernel [C]ache [C]ontrolfile management [c]heckpoint [p]rogress

  • 年终难终 进入数据库事故多发期 January 22, 2006
    据多日观测,临近年终,国内各行业数据库已经进入了数据库事故多发期

  • 为何而心跳-Oracle Heartbeat研究 January 19, 2006
    在Oracle中有一个事件叫Heartbeat,这个词在很多地方被提及,并且有着不同的含义(比如RAC中),我们这里要讨论的是CKPT的Heartbeat机制。

  • Oracle HowTo:如何更改数据库的SCN? January 17, 2006
    很多时候,我们需要调整数据库系统的SCN值,有的是为了恢复的需要,如为了解决ORA-600 2662错误.

  • How Big SCN can be? January 16, 2006
    oracle 内部使用了一个4G范围的数据来表示01/01/1988 00:00:00 ~ 08/18/2121 06:28:15 这段时间.它的算法简单,说来就是每个月都是用的31天来表示时间,每增加1秒,这个数值就增加1.

  • Oracle HowTo:How to get Oracle SCN? January 6, 2006
    如何获得当前数据库的SCN值...

  • Oracle HowTo: How to deal with Ora-600 4193 error December 30, 2005
    在解决2662错误之后,经常会出现Ora-00600 4193错误,经常可以在alert文件中看到的错误号类似

  • what is SMON_SCN_TIME ? December 27, 2005
    SMON_SCN_TIME是Oracle数据库的系统表,用以进行辅助恢复等功能。 在Oracle9iR2中,SMON_SCN_TIME每5分钟被更新一次。

  • Oracle HowTo:如何强制刷新Buffer Cache December 22, 2005
    很多时候,为了排除Cache对于测试的影响,我们常常需要手动刷新Buffer Cache,以促使Oracle重新执行物理访问。

  • Oracle Diag:如何处理ORA-600 2662错误 December 20, 2005
    在ORA-00600 2262错误解决一文中,我曾经提到过,很多时候使用隐含参数_ALLOW_RESETLOGS_CORRUPTION后resetlogs打开数据库,我们可能会由于SCN不一致而遭遇到ORA-00600 2662号错误,这里给出一个完整的例子及解决过程。

  • db_file_multiblock_read_count and Oracle IO size December 14, 2005
    db_file_multiblock_read_count的设置要受OS最大IO能力影响,也就是说,如果你系统的硬件IO能力有限,即使设置再大的db_file_multiblock_read_count也是没有用的

  • How Oracle Store Number internal? December 11, 2005
    Oracle Number Store Internal Dump

  • Oracle Diagnostics:How to deal with ORA-19815 December 5, 2005
    这个10g的数据库最近数据量狂增,每天产生大约5~6个G的归档

  • 案例:Move系统表DEPENDENCY$导致索引失效的数据库故障 November 18, 2005
    今天看到有一个朋友因为Move了一个系统表DEPENDENCY$,在没有Rebuild索引的情况下,重起数据库,结果收到ORA-01502错误,数据库无法启动

  • Linux上shmmax参数的设置及含义 November 17, 2005
    shmmax内核参数定义单个共享内存段的最大值,如果该参数设置小于Oracle SGA设置,那么SGA就会被分配多个共享内存段。这在繁忙的系统中可能成为性能负担,带来系统问题。

  • ORA-00600 2262错误解决 October 24, 2005
    继续上一个测试,使用隐含参数_ALLOW_RESETLOGS_CORRUPTION后resetlogs打开数据库后,我们说很多时候你会遇到ORA-00600 2662号错误,这个错误的含义是:
    A data block SCN is ahead of the current SCN.
    The ORA-600 [2662] occurs when an SCN is compared to the dependent SCN
    stored in a UGA variable.
    If the SCN is less than the dependent SCN then we signal the ORA-600 [2662]
    internal error.
    在测试中,很容易模拟这个错误

  • 了解raw trace文件的各项内容 October 23, 2005
    我们知道有几种方法可以得到一个SQL语句执行时后台的trace文件,一个是用SQL_TRACE,一个是用DBMS_SUPPORT包或者DBMS_SYSTEM包,还有一种就是直接使用10046 event。

  • Oracle Hidden Parameter:_allow_resetlogs_corruption October 19, 2005
    提示:Oracle的隐含参数只应该在测试环境或者在Oracle Support的支持下使用。 在使用_disable_logging进一步的测试中,试图通过switch logfile进行日志切换,结果重起居然报出日志文件损坏。 SQL> startup ORACLE instance started. Total System Global Area 97588504 bytes Fixed Size 451864 bytes Variable...

  • Oracle Hidden Parameter:_disable_logging October 19, 2005
    提示:Oracle的隐含参数只应该在测试环境或者在Oracle Support的支持下使用。 从Oracle的系统表中,我们知道Oracle存在一个隐含参数_disable_logging可以用于禁用日志生成,这个参数显然只能用于测试目的(可以极大提高Benchmark测试的性能),禁止日志生成必然导致事务的不可恢复性。 SQL> select ksppinm,ksppdesc from x$ksppi where ksppinm like '%logging'; KSPPINM KSPPDESC -------------------- ------------------------------ _disable_logging Disable logging 因为特殊的需要,对这个参数进行了一点简单测试:...

  • ORA-00600 [2662]错误解决过程 October 19, 2005
    ORA-600 [2662] "Block SCN is ahead of Current SCN",说明当前数据库的数据块的SCN早于当前的SCN,主要是和存储在UGA变量中的dependent SCN进行比较,如果当前的SCN小于它,数据库就会产生这个ORA-600 [2662]的错误了。这个错误一共有五个参数,分别代表不同的含义

  • What's mean Oracle PE lock from v$lock? October 19, 2005
    今天同事维护一个数据库,说观察到大量的PE锁竞争: 14:44:34 SQL> select * from v$Lock; ADDR KADDR SID TY ID1 ID2 LMODE REQUEST CTIME BLOCK -------- -------- ----------...

  • 关于proof阵营和voodoo阵营的论战 September 21, 2005
    所谓的proof阵营,这是我自己起的名字,包含我们所尊敬的Tom,JL等大师。 所谓的voodoo阵营,这是根据Howard J. Rogers发表的Voodoo Tuning一文而来,eygle在Howard J. Rogers创造的新词组:Voodoo Tuning中也谈过一些看法,包括我们所熟知的(此处未用尊敬一词,个人立场已经很是鲜明,惭愧惭愧)Don,Mike等专家。 之所以又提到这个由来已久的论战,是因为今天收到dba-oracle的邮件,提到Mike Ault有新作describing the current Oracle myths and traps发表,但是邮件上给你URL居然不对,ft......于是就直接上dba-oracle找了一下,如果没有更新的文章的话,那么应该是这篇 Oracle Myths Revisited,同时又注意到Mike Ault还有另外一篇...

  • How to repair corruption block use BBED? September 12, 2005
    前面我已经介绍了如何使用BBED模拟坏块,本文简要介绍如何使用BBED修复损坏的BLOCK。 1.备份数据文件 要想恢复损坏的文件,需要存在一个良好文件,本文简单冷备份一下文件. [oracle@jumper conner]$ cp users01.dbf users01.dbf.bak 2.修改BBED参数文件 加入备份文件 [oracle@jumper conner]$ vi filelist.txt 1 /opt/oracle/oradata/conner/system01.dbf 440401920 2 /opt/oracle/oradata/conner/undotbs01.dbf 104857600...

  • How to simulate block corruption with BBED? September 11, 2005
    使用BBED模拟数据块损坏

  • Sparse File And Oracle temporary tablespaces August 16, 2005
    实际上这是Unix/Linux的一个特性,Oracle的临时表空间,初始创建时,比如你指定14G,这个空间是延后分配的。

  • 数据文件SCN的一致性问题 August 6, 2005
    回答几个留言板上的问题

  • 如何使用sqlldr的WHEN判断加载数据到不同的数据表 July 3, 2005
    如果不选择分区表,可以使用此方式直接加载数据到不同的数据表中....

  • 如何从备份集中恢复归档日志 July 3, 2005
    这一类的操作是因为丢失了所有的控制文件,而RMAN的备份信息又存储在控制文件之中。
    所以只能使用DMBS_BACKUP_RESTORE从备份集中恢复数据文件、归档日志等进行恢复。


  • Oracle数据库诊断案例-redo log日志组处于高激活状态 June 26, 2005
    redo log日志组处于高激活状态

  • 使用Oracle9i的新特性Flashback Query恢复误删除数据 June 22, 2005
    下午接到研发工程师的电话,说误删除了部分重要数据,并且已经提交,需要恢复。
    登陆到数据库上查看,由于是Oracle9iR2,首先尝试使用flashback query闪回数据。


  • 使用Oracle9i的blockrecover新特性修复数据库中的坏块 June 12, 2005
    1.备份数据库 D:\>rman target / 恢复管理器: 版本9.2.0.6.0 - Production Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved. 连接到目标数据库: EYGLE (DBID=1365961916)...

  • 使用dbv和RMAN检查数据文件中的坏块 June 11, 2005
    1.使用dbv检查 D:\oradata\eygle>dbv file=EYGLE.DBF blocksize=8192 DBVERIFY: Release 10.1.0.4.0 - Production on 星期六 6月 11 17:36:37 2005 Copyright (c) 1982, 2004, Oracle....

  • 应对RMAN-06026错误,使用dbms_backup_restore进行恢复 June 11, 2005
    昨天做一个实验,结果把数据库搞坏了,当试图进行恢复时居然报了RMAN-06026错误。...

  • Jonathan Lewis: Can we have a sensible debate ? April 21, 2005
    看来Don Burleson从来都没打算停止狡辩,最近Don又提出了一个 “Empirical” vs. “Research” DBAs的论题,邀请Jonathan Lewis等人参与,feel free to join the discussion,我已经不止一次见Don搬出这句话来。 中间一段非常有意思: Jonathan说一开始Don就提出: Remember the rule here that everyone...

  • Control SCN of Undo Segments April 21, 2005
    在回滚段头有一个重要的数据结构称为:Control SCN.
    这个SCN是最近一个被重用的事务槽的SCN(重用是按事务的先后顺序重用的)。如果Control SCN比查询的Snapshot SCN新,那么Oracle不会试图去构造前镜像,而是马上返回ORA-01555错误,因为这个UNDO信息肯定已经被覆盖了。


  • 对即将上线的Oracle10g ASM生产数据库进行备份恢复测试 April 13, 2005
    新的10g ASM生产数据库即将上线,以下是上线前做的简单的备份恢复测试: 1.首先执行备份 $ rman target / @full_bak.sql Recovery Manager: Release 10.1.0.3.0 - 64bit Production Copyright (c) 1995, 2004, Oracle....

  • Oracle10g已经废弃log_archive_start参数 April 13, 2005
    在Oracle10g中,log_archive_start参数已经被废弃,只要启动数据库的归档模式,Oracle就会启用自动归档,从而避免了10g以前由于用户疏忽所带来的一系列问题

  • Oracle10g新增的用以简化用户管理备份的命令 April 6, 2005
    Oracle10g新增命令用以简化用户管理的备份,可以通过 alter database begin/end backup来进行数据库备份模式的切换。 $ sqlplus "/ as sysdba" SQL*Plus: Release 10.1.0.2.0 - Production on Wed Apr 6 22:31:33...

  • 使用Oracle10g新特性,跨越Resetlogs时间点进行恢复 April 5, 2005
    在Oracle10g以前,在进行了不完全恢复使用resetlogs选项打开数据库以后,Oracle建议你要立即进行全备份。
    因为日志序号会被置位,以防止后续日志被应用。resetlogs之前的备份将不能用于进行跨域resetlogs时间点的恢复。

  • 如何把数据导入不同的表空间? April 5, 2005
    很多人在进行数据迁移时,希望把数据导入不同于原系统的表空间,在导入之后却往往发现,数据被导入了原表空间。

  • 使用Rman进行不完全恢复 April 5, 2005
    1.模拟数据损失 $ sqlplus "/ as sysdba" SQL*Plus: Release 10.1.0.2.0 - Production on Tue Apr 5 09:26:04 2005 Copyright (c) 1982,...

  • 使用RMAN进行基于表空间的恢复 March 30, 2005
    示范案例,仅供参考: 1.察看备份文件 $ rman target / Recovery Manager: Release 10.1.0.2.0 - 64bit Production Copyright (c) 1995, 2004, Oracle. All rights...

  • 如何从自动备份中恢复控制文件和SPFILE文件 March 30, 2005
    启用了自动控制文件备份功能之后,在数据库发生重要改变或备份完成之后,会自动进行控制文件备份,同时备份SPFILE文件

  • 通过Oracle10g的flashback transaction query新特性进行事务撤销 March 30, 2005
    具备了flashback version query查询的基础,我们就可以进行基于flashback version query的恢复.
    这就是flashback transaction query。flashback transaction query可以从FLASHBACK_TRANSACTION_QUERY中获得指定事务的历史信息以及Undo_SQL,通过这个UNDO_SQL,我们就可以恢复特定的事务。


  • Oracle10g的Flashback version Query March 30, 2005
    Oracle10g通过Flashback Version Query提供查看对数据库事务级改变的方法. 当闪回事务处理查询与闪回版本查询同时使用时,我们可以轻易地从用户或者应用程序错误恢复。 以下是闪回版本查询的示例: 1.执行DML操作 EYGLE on 30-MAR-05 >create table t as select username,user_id from dba_users; Table created. EYGLE...

  • 使用Oracle10g的Flashback Query进行数据闪回 March 30, 2005
    Oracle10g对于闪回查询进行了增强,支持更简单的SQL操作,允许对误删除、误更新等DML操作进行闪回。 看一下以下测试: 1.原表记录 $ sqlplus eygle/eygle SQL*Plus: Release 10.1.0.2.0 - Production on Wed Mar 30 08:52:04 2005 Copyright (c) 1982,...

  • 使用Oracle10g提供的flashback drop 新特性 March 29, 2005
    为了加快用户错误操作的恢复,Oracle10g提供了flashback drop的功能。
    而在以前的版本中,除了不完全恢复,通常没有一个好的解决办法。
    Oracle 10g的flashback drop功能,允许你从当前数据库中恢复一个被drop了的对象,在执行drop操作时,现在Oracle不是真正删除它,而是将该对象自动将放入回收站。对于一个对象的删除,其实仅仅就是简单的重令名操作。


  • 使用Oracle10g Flashback database功能恢复用户错误 March 29, 2005
    Flashback Database是Oracle10g的新增功能,在启动Flashback Database之后,它定期将已发生变化的块写入闪回日志的日志文件中。这些日志不是由传统的Log Writer (LGWR) 过程写入,而是由一种称作Recovery Writer (RVWR)的新过程写入。这是Oracle10g的新增进程。 $ ps -ef|grep rvwr|grep -v grep oracle 27231 1 0 17:10:30 ?...

  • 如何启用Oracle10g闪回数据库特性 March 29, 2005
    1.确认当前模式 SYS AS SYSDBA on 29-MAR-05 >select flashback_on from v$database; FLA --- NO 2.检查/修改恢复区设置 SYS AS SYSDBA on 29-MAR-05 >show...

  • 启用Block Change Tracking-10g新特性 March 29, 2005
    Block chage tracking是Oracle10g的一个新特性,Block change tracking进程记录自从上一次备份以来数据块的变化,并把这些信息记录在跟踪文件中。RMAN使用这个文件判断增量备份中需要备份的变更数据。这极大的促进了备份性能,RMAN可以不再扫描整个文件以查找变更数据。

  • Oracle10g备份集压缩新特性(Backupset Compression) March 29, 2005
    Oracle10g允许你和BACKUP命令伴随使用AS COMPRESSED BACKUPSET字句,对备份集进行压缩。

  • 使用COPY的镜像文件进行基于表空间/数据文件的恢复 March 28, 2005
    假设数据文件或表空间丢失之前进行了镜像COPY备份,那么以下过程可以用于参考恢复

  • 使用Oracle10g新特性简化数据库镜像COPY March 28, 2005
    镜像拷贝是单个数据文件、归档日志或者控制文件的额外拷贝,不以RMAN的格式存储。镜像拷贝的文件和执行操作系统级拷贝的文件一样,RMAN进行重建或者恢复操作时,可以使用镜像拷贝,当然手工操作也可以使用。

  • Oracle10g如何释放flash_recovery_area,解决ORA-19815错误 March 28, 2005
    Oracle10g中释放flash_recovery_area,解决ORA-19815错误,一个示范案例

  • 重建控制文件恢复丢失表空间一例 March 25, 2005
    以下案例用以说明重建控制文件的恢复机制。 案例假设在备份之后,新建表空间,然后crash丢失所有控制文件和数据文件。 拥有所有日志及归档文件进行恢复。 1.数据库状态 [oracle@standby oracle]$ sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on Fri Mar 25 13:56:54...

  • Oracle10g的ASH及历史信息记录 March 18, 2005
    性能调整和问题诊断是任何数据库管理人员必须面临的最大挑战和必须完成的重要管理任务。基于管理上的简化和易用性的努力,Oracle推出了Autometic Database Diagnostic Monitor (ADDM) ,通过ADDM,Oracle试图使数据库的维护工作变得更简单更容易

  • 使用ERRORSTACK进行错误跟踪及诊断 March 16, 2005
    诊断事件可以在Session级设置,也可以在系统级设置,通常如果要诊断全局错误,最好在系统级设置....

  • Oracle10g的UNDO_RETENTION自动化管理增强 March 15, 2005
    在AUM模式下,我们知道UNDO_RETENTION参数用以控制事务提交以后undo信息保留的时间。该参数以秒为单位,9iR1初始值为900秒,在Oracle9iR2增加为10800秒。但是这是一个NO Guaranteed的限制。

  • 使用RMAN的备份及恢复一例-丢失所有控制文件 March 9, 2005
    1.数据库基本信息 [oracle@standby oracle]$ sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on Wed Mar 9 09:55:14 2005 Copyright (c)...

  • 使用Oracle9i的自动控制文件备份功能 March 9, 2005
    在启用了自动备份以后,在数据库发生文件变化或备份等任务时,数据库会自动备份控制文件。
    如果丢失了所有的控制文件及数据文件,我们可以尝试从自动备份中恢复控制文件及spfile文件。


  • 如何重建UNDO TABLESPACE March 4, 2005
    MSN上有朋友问到,在迁移(同平台)的时候由于空间问题,他不打算要现在的UNDO文件,想要重建一个。他打算使用_corrupted_rollback_segments参数。

  • Howard J. Rogers创造的新词组:Voodoo Tuning March 2, 2005
    Voodoo Tuning是HJR创造的一个词,用以形容那些没有及时更新自己的知识技能的所谓的Oracle技术专家

  • 让B*Tree索引一直向左走 February 26, 2005
    Jonathan Lewis在他的文章中,奇妙的利用B*Tree索引分裂的原则,通过24条记录就成功的构造出了24层的索引结构,从而验证了B*Tree索引的最大允许高度

  • 如何转储B*Tree索引的分枝结构 February 26, 2005
    Oracle允许对B*Tree索引进行转储,以显示B*Tree的层次结构。 示例如下: 1.首先选择要研究的索引 SQL> select index_name from user_indexes where index_name='I_BD_INVMANDOC_TS'; INDEX_NAME ------------------------------ I_BD_INVMANDOC_TS 2.找到该索引的object_id SQL> select object_id from dba_objects where...

  • B*Tree索引能有多高?--推荐Jonathan Lewis 的一篇经典文章 February 25, 2005
    有人说B*Tree索引最高能有24层,Lewis试图证明这个限制。

  • 关于redo copy latch的说明 February 11, 2005
    一个进程产生redo时首先需要获得redo copy latch,获得了该latch以后才能把redo拷贝到Log Buffer中。
    redo copy latch表明进程正在把redo拷贝入log buffer中,在此过程中,LGWR应该等待直到进程拷贝完成才能把目标Log buffer Block写入磁盘。


  • Log Block Size February 10, 2005
    LGWR以block为单位把redo写入磁盘,redo block size是Oracle源代码中固定的,与操作系统相关。 通常的操作系统都是以512 bytes为单位,如:Solaris, AIX, Windows NT/2000, Linux 等 这个Log size可以从Oracle的内部视图中获得: SQL> select max(lebsz) from x$kccle; MAX(LEBSZ) ---------- 512...

  • Oracle的X$表系列介绍之-X$KSMSP January 25, 2005
    X$KSMSP的名称含义为: [K]ernal [S]torage [M]emory Management [S]GA Hea[P]

  • Oracle基于时间点的恢复 January 17, 2005
    Oracle基于时间点的恢复能够精确到什么样的精度? 这是一个需要关心的问题。 以下测试用于进行一点说明。 1.首先做好冷备份 2.创建测试数据 D:\>sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.6.0 - Production on Mon Jan 17 11:56:43 2005...

  • Oracle的X$表系列介绍之-X$KSLLCLASS January 16, 2005
    X$KSLLCLASS--[K]ernel [S]ervice [L]ock [L]atches [CLASS] 从Oracle9iR2开始,Oracle允许对Latch进行分类,不同的分类可以用于不同的_SPIN_COUNT值。 这就避免了之前版本,一旦修改_SPIN_COUNT参数就会影响所有Latch的问题。从而可以在一定程度上控制该参数对于CPU的过量耗用。...

  • Rman Crosscheck删除失效归档 December 20, 2004
    当手工删除了归档日志以后,Rman备份会检测到日志缺失,从而无法进一步继续执行。
    所以此时需要手工执行crosscheck过程,之后Rman备份可以恢复正常。


  • 如何获得当前数据库的SCN值 December 16, 2004
    SCN(System Change Number) ,也就是通常我们所说的系统改变号,是数据库中非常重要的一个数据结构。

  • Oracle诊断事件列表 December 10, 2004
    经常有人问,Oracle有哪些诊断事件,各是什么含义,怎样使用? 这些问题问得太多太多,Oracle没有过多的说明,实际上也不需要太多的说明。 我们可以通过以下代码查询得到Oracle的诊断事件及说明,通过这些,我想就足够了。列举在这里给自己参考。

  • 在Oracle9i中,如何监视索引并清除监视信息 December 4, 2004
    对于DML操作来说,索引对于数据库是一个性能负担.如果索引没有被有效的使用,那么其存在性就值得从新考虑. 从Oracle9i开始,Oracle允许你监视索引的使用

  • Oracle X$ table 参考手册 November 17, 2004
    Oracle X$ table 参考手册,来自Metalink....

  • 使用热备份进行分时恢复 November 15, 2004

    很多时候你可能遇到这样的情况:
    一个大型数据库的迁移,但是只有很少的停机时间,这看起来充满困难。可是我们可以通过各种方法来缩短停机时间.



  • 用Rman的Plus archvielog选项简化数据库备份 November 4, 2004
    Oracle9i开始Rman提供plus archivelog选项,极大的简化了Rman备份的操作。

  • 关于shared pool的深入探讨(一) October 31, 2004
    关于shared pool的设置一直是一个争议较多的内容,很多文章上说,shared pool设置过大会带来额外的管理上的负担,从而在某些条件下会导致性能的下降. 那么这个管理上的负担指的是什么内容呢?

  • 关于shared pool的深入探讨(二) October 31, 2004
    由此我们可以看出,如果数据库系统中存在大量的硬解析,不停请求分配free的shred pool内存 除了必须的shared pool latch等竞争外,还不可避免的会导致shared pool中产生更多的内存碎片 (当然,在内存回收时,你可能看到chunk数量减少的情况)

  • 关于shared pool的深入探讨(三) October 31, 2004
    Library cache由一个hash表组成,而hash表是一个由hash buckets组成的数组. 每个hash bucket都是包含library cache handle的一个双向链表。 Library Cache Handle指向Library Cache Object和一个引用列表. library cache对象进一步分为:依赖表、子表和授权表等

  • 关于shared pool的深入探讨(四) October 31, 2004
    Oracle使用两种数据结构来进行shared pool的并发控制:lock 和 pin,Lock比pin具有更高的级别. Lock在handle上获得,在pin一个对象之前,必须首先获得该handle的锁定. 锁定主要有三种模式: Null,share,Exclusive.

  • 关于shared pool的深入探讨(五) October 31, 2004
    Oracle使用两种数据结构来进行shared pool的并发控制:lock 和 pin. Lock比pin具有更高的级别. Lock在handle上获得,在pin一个对象之前,必须首先获得该handle的锁定.

  • 关于shared pool的深入探讨(六)-高Latch竞争案例 October 31, 2004
    我们注意到,在当前数据库中竞争最严重的两个latch是shared pool和library cache. 显然这极有可能是SQL的过度解析造成的.

  • 丢失所有文件、拥有全备份,缺少后增加的文件 October 14, 2004
    此案例丢失控制文件,从备份控制文件进行恢复,在进行恢复中,会向控制文件中以缺省规则增加文件,我们可以通过CREATE AS方式修改控制文件中记录.继续应用所有归档和日志文件可以完成恢复.

  • 无文件备份、拥有所有归档的恢复 October 13, 2004
    此案例拥有当前控制文件,控制文件中包含了丢失文件信息,所以可以通过create datafile方式重新创建文件...

  • Use RMAN to Manage BackupSet October 12, 2004
    With Oracle 9iR2, We have a new way to let RMAN to manage backupset better. That is CONFIGURE RETENTION POLICY command .

  • Undo Internal的研究 September 19, 2004
    本文就Undo的内部结构作初步探讨,我们通过实验来看一下回滚段的内部结构.

  • 数据块转储及RDBA的转换 August 31, 2004
    很多时候我们在进行进一步研究时需要转储(dump)Oracle的数据块,以研究其内容,Oracle提供了很好的方式,我们通过以下例子简单说明一下...

  • Nologging到底何时才能生效? July 13, 2004
    我们知道,Nologging只在很少情况下生效,通常,DML操作总是要生成redo的 关于Nologging和append,一直存在很多误解,经过一系列研究,终于发现了Nologging的真相....

  • Oracle中临时表产生过量Redo的说明 July 3, 2004
    我们知道临时表在DML操作中可以减少redo的生成,从而在保存中间结果集时可以带来较大的性能提高

  • Oracle中Kill session的研究 June 25, 2004
    我们知道,在Oracle数据库中,可以通过kill session的方式来终止一个进程....

  • Oracle中模拟及修复数据块损坏 June 24, 2004
    通过试验模拟及解决数据块损坏...

  • 关于checkpoint cnt和checkpoint scn June 22, 2004
    Checkpoint cnt用于保证在正常操作中使用的数据文件是当前版本 在恢复时防止恢复数据文件的错误版本.Checkpoint cnt是一直递增的,即使表空间处于热备份模式.

  • 关于数据文件头信息记录 June 17, 2004
    这个测试的起因是一些朋友讨论,Oracle在恢复时从何处获得日志文件名信息. 因为如果在重建控制文件的过程中,控制文件中的信息显然已经被清空了.

  • 关于ASSM HWM的研究 June 15, 2004
    HWM移动遵循: 每次移动32个blocks,但是HWM包含未格式化的block,每次格式化16个block或者16 –metadata blocks

  • Oracle Diagnostics:How to deal with ORA-600 2662 Error new
    ORA-00600 2262错误解决一文中,我曾经提到过,很多时候使用隐含参数_ALLOW_RESETLOGS_CORRUPTION后resetlogs打开数据库,我们可能会由于SCN不一致而遭遇到ORA-00600 2662号错误,这里给出一个完整的例子及解决过程。
  • Oracle官方文档参考:
    Step-By-Step Installation of RAC with OCFS on Windows 2000
    Step-By-Step Installation of RAC with RAW Datafiles on Windows 2000
  • How to repair corruption block use BBED?
    前面我已经介绍了如何使用BBED模拟坏块,本文简要介绍如何使用BBED修复损坏的BLOCK。
  • How to simulate block corruption with BBED?
    BBED是Block Browser/Editor的缩写,是Oracle的一个内部工具,不对外发布文档及支持。
  • How to compile Oracle10g BBED tools
  • Veritas Cluster Server 4.0安装指南
  • 如何从备份集中恢复归档日志
    使用DBMS_BACKUP_RESTORE包从备份集中恢复归档日志文件一例
  • Oracle高级复制的创建配置步骤-Step by Step
  • 使用Oracle9i的新特性Flashback Query恢复误删除数据
  • 使用Oracle9i的blockrecover新特性修复数据库中的坏块 PDF版本
    使用Oracle9i的新特性blockrecover,进行块级恢复.....
  • 使用dbv和RMAN检查数据文件中的坏块
  • 应对RMAN-06026错误,使用dbms_backup_restore进行恢复
    resetlogs之后,Oracle使用当前的控制文件不允许从这个历史备份集中进行恢复。
  • 高级复制/物化视图复制中ORA-23313错误解决一例
    当引用类似"db001.q-link"的db link时,Oracle出现错误,"-"这个特殊字符Oracle在db link 中无法正确识别。
  • 对即将上线的Oracle10g ASM生产数据库进行备份恢复测试
    新的10g ASM生产数据库即将上线,以下是上线前做的简单的备份恢复测试......
  • Oracle10g已经废弃log_archive_start参数
    在Oracle10g中,log_archive_start参数已经被废弃,只要启动数据库的归档模式,Oracle就会启用自动归档....
  • Oracle10g新增的用以简化用户管理备份的命令
    Oracle10g新增命令用以简化用户管理的备份........
  • 使用Oracle10g新特性,跨越Resetlogs时间点进行恢复
    在Oracle10g以前,在进行了不完全恢复使用resetlogs选项打开数据库以后,Oracle建议你要立即进行全备份....
  • 如何把数据导入不同的表空间?
    exp/imp使用的小技巧
  • 使用Rman进行不完全恢复
    Rman进行不完全恢复的例子
  • 使用RMAN进行基于表空间的恢复
    示范案例,仅供参考
  • 如何从自动备份中恢复控制文件和SPFILE文件
    启用了自动控制文件备份功能之后,在数据库发生重要改变或备份完成之后,会自动进行控制文件备份,同时备份SPFILE文件。
  • 通过Oracle10g的flashback transaction query新特性进行事务撤销
    具备了flashback version query查询的基础,我们就可以进行基于flashback version query的恢复...
  • Oracle10g的Flashback version Query
    Oracle10g通过Flashback Version Query提供查看对数据库事务级改变的方法...
  • 使用Oracle10g的Flashback Query进行数据闪回
    Oracle10g对于闪回查询进行了增强,支持更简单的SQL操作,允许对误删除、误更新等DML操作进行闪回...
  • 使用Oracle10g提供的flashback drop 新特性
    Oracle 10g的flashback drop功能,允许你从当前数据库中恢复一个被drop了的对象...
  • 使用Oracle10g Flashback database功能恢复用户错误
    这些日志不是由传统的Log Writer (LGWR) 过程写入,而是由一种称作Recovery Writer (RVWR)的新过程写入...
  • 如何启用Oracle10g闪回数据库特性
    alter database flashback on...
  • 启用Block Change Tracking-10g新特性
    Block chage tracking是Oracle10g的一个新特性,Block change tracking进程记录自从上一次备份以来数据块的变化...
  • Oracle10g备份集压缩新特性(Backupset Compression)
    Oracle10g允许你和BACKUP命令伴随使用AS COMPRESSED BACKUPSET字句,对备份集进行压缩...
  • 使用COPY的镜像文件进行基于表空间/数据文件的恢复
    假设数据文件或表空间丢失之前进行了镜像COPY备份,那么以下过程可以用于参考恢复...
  • 使用Oracle10g新特性简化数据库镜像COPY
    镜像拷贝是单个数据文件、归档日志或者控制文件的额外拷贝,不以RMAN的格式存储...
  • 重建控制文件恢复丢失表空间一例
    案例用以说明重建控制文件的恢复机制....
  • 使用RMAN的备份及恢复一例-丢失所有控制文件
    使用RMAN备份集 + 自动控制文件备份恢复数据库一例...
  • 使用Oracle9i的自动控制文件备份功能
    启用自动控制文件备份,防止控制文件故障...
  • 高级复制中如何应对主体站点故障
    简单的,我们可以移除出问题的主体站点
  • 在高级复制中如何切换主体定义站点
    这是一个同步复制环境,在同步复制中,任何一个站点Down掉都会导致数据库服务中断。
  • 使用dbms_rectifier_diff解决高级复制中的数据冲突问题
    很多时候在高级复制中可能存在数据冲突和不一致现象。 Oracle提供的dbms_rectifier_diff包可以用于解决该冲突...
  • 关于Oracle的冲突解决机制的研究 pdf版本
    关于Oracle的冲突解决机制的研究,以及如何手动解决Oracle高级复制中的冲突...
  • Oracle基于时间点的恢复
    Oracle基于时间点的恢复能够精确到什么样的精度? ...
  • Rman Crosscheck删除失效归档
    当手工删除了归档日志以后,Rman备份会检测到日志缺失,从而无法进一步继续执行...
  • 使用热备份进行分时恢复
    怎样通过归档逐步恢复以缩短数据迁移时间...
  • 使用Rman的Plus archvielog选项简化数据库备份操作
    Oracle9i开始Rman提供plus archivelog选项,极大的简化了Rman备份的操作...
  • 丢失所有文件、拥有全备份,缺少后增加的文件
    拥有所有归档文件及日志文件,丢失所有数据文件及控制文件,后增加的文件无备份,丢失这个文件...
  • 无文件备份、拥有所有归档的恢复
    拥有所有归档文件,后增加文件无备份,丢失这个文件,拥有控制文件及所有其他文件的恢复...
  • 使用RMAN管理备份集
    Use CONFIGURE and OBSOLETE command to manage rman backupset...
  • Install Oracle9iRac On Solaris + EMC + Veritas ---All the things you should know
    在Solaris9+Vcs4.0+Vxvm4.0+EMC Cx500上安装Oracle9i Rac的说明,step by step...
  • 安装Oracle9i RAC软件
    安装Oracle9i Rac软件的说明,step by step图示...
  • 创建Oracle9i RAC数据库
    创建Oracle9i RAC数据库,step by step图示...
  • 模拟及修复Oracle数据块损坏
    数据块损坏是比较严重的数据库故障,如果没有备份,通常会丢失数据,本文通过实验模拟数据块的损坏并进行修复...
  • Dataguard配置Step by Step
    Dataguard配置Step by Step,比较详细的记录,包含测试步骤...
  • More......

 

 

 

CopyRight © 2004 ~ 2008 eygle.com, All rights reserved.