全局检查点和增量检查点
由于Oracle中LGWR和DBWR工作的不一致,Oracle引入了检查点的概念,用于同步数据库,保证数据库的一致性。在Oracle里面,检查点分为两种:完全检查点和增量检查点。下面我们分别介绍这两种检查点的作用:[@more@]1、 完全检查点在Oracle8i之前,数据库的发生的检查点都是完全检查点,完全检查点会将数据缓冲区里面所有的脏数据块写入相应的数据文件中,并且同步数据文件头和控制文件,保证数据库的一致。完全检查点在8i之后只有在下列两种情况下才会发生:(1、)DBA手工执行alter system checkpoint的命令;(2、)数据库正常shutdown(i
Access Paths for the Query Optimizer
1、Full Table ScansThis type of scan reads all rows from a table and filters out those that do not meet the selection criteria. During a full table scan, all blocks in the table that are under the high water mark are scanned. The high water mark indicates the amount of used space, or space that had been formatted to receive data. Each row is examined to determine whether it satisfies the statement's WHERE clause. When Oracle performs a full table scan, the blocks are read sequentially. Because t
20 Differences Between Oracle on NT and Oracle on Unix(Metalink:45967.1)
1. AVAILABILITYWindows NT has been existence since 1993. It runs on two processor architectures: Intel X86 (needs Pentium) and Digital Alpha AXP.The Windows NT operating system is only available from Microsoft.UNIX has been in existence since 1972: previous versions did exist,but they were written in PDP assembly language, rather than C. UNIX runs on most hardware architectures and versions are supplied by many vendors, most notably Sun, HP, IBM, Digital, Sequent, Data General, NCR and SCO.[@mor
Oracle数据字典的图片下载
eygle一张照片上墙头贴着一张9i数据字典关联的的图片,很漂亮,有不少Puber问起要这个。找了下,发现两个电子版的,还是很清晰的。如果有兴趣的话可以自己联系打印。放在这里供有需要的Puber下载。10g_view.pdfv$views1.rar[@more@]
Oracle中SQL语句解析的步骤
我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析。那么这两种解析有何不同之处呢?它们又分别是如何进行解析呢?Oracle内部解析的步骤又是如何进行的呢?下面我们就这些话题进行共同探讨。[@more@]在Oracle中存在两种类型的SQL语句,一类为DDL语句,他们是从来不会共享使用的,也就是每次执行都需要进行硬解析。还有一类就是DML语句,他们会根据情况选择要么进行硬解析,要么进行软解析。在Oracle 8i OCP教材的023中1-12有说明SQL语句的解析步骤,当一条SQL语句从客户端进程传递到服务器端进程后,
一次无备份、非归档数据库断电恢复的全过程
环境:Windows 2000 Advanced Server sp4+Oracle 9206现象描述:客户数据库机房在清理过程中,清洁人员不小心将服务器后面的电源线直接拔掉,导致实例断电,数据库无法启动。数据库运行在非归档模式下,没有备份,只有前一天晚上的全库导出文件。数据库重新启动以后,数据库无法打开,用SQLPLUS连接,无论如何都无法登录进去,报错如下:[@more@]SQL> conn/as sysdbaERROR:ORA-01041: internal error. hostdef extension doesn't exist??SQL> conn sys/aa as sysdbaERROR:ORA-03113: end-of-file on communication channel解决问题
体验Oracle 10gR2的drop empty datafile
1.首先创建一个测试表空间,并添加数据文件: SQL> create tablespace test datafile 'd:\oracle\t01.dbf' size 1M; Tablespace created. SQL> alter tablespace test add datafile 'd:\oracle\t02.dbf' size 1M; Tablespace altered. SQL> select file#,name from v$datafile; FILE# NAME ---------- ---------------------------------------- 1 D:\ORACLE\ORADATA\XUE10G\SYSTEM01.DBF 2 D:\ORACLE\ORADATA\XUE10G\UNDOTBS01.DBF 3
Log buffer 的 Latch
Log buffer基本上只有一个redo allocation latch的latch保护,该latch的工作形式是以顺序的形式工作的。这是由log buffer的工作原理所决定的,由于日志的写入必须是以顺序循环的方式写入的,不同的条目必须按顺序写入才能保证互不干扰。但是只有一个单一latch来管理log buffer的话,那么如果系统非常繁忙,事务日志产生非常快的话,将会导致latch的争用,不同的会话可能将一直等待他们相应的日志条目copy到log buffer中。因此Oracle另外引入了redo copy latch的latch来管理log buffer。redo copy latch可以减少一个会话持有redo al
Windows下9i,10g共存9i dbca无法启动的解决办法
Windows系统中如果同时安装Oracle 9i,10g两个版本的话,有可能会出现无法启动9i dbca的情况。具体表现在如果运行9i DBCA工具的时候会无法启动,如果在命令行下运行DBCA的话,会报JAVA CLASS路径设置错误的提示,具体内容如下:[@more@]D:oracleora92bin>dbcaException in thread "main" java.lang.UnsatisfiedLinkError: initializeClusterat oracle.ops.mgmt.nativesystem.WindowsSystem.initializeCluster(WindowsSystem.java:390)at oracle.ops.mgmt.cluster.GetActiveNodes.initializeCluster(GetActiveNodes.java:260)a
下载已安装好10g RAC的VMvare安装盘
从xzh2000在管理版发的帖子上知道的:http://www.itpub.net/394434.html。Oracle官方站点目前已经提供安装好的Red Hat Enterprice Linux 3(u2)上10g RAC的VMware虚拟机安装盘。有需要的话可以到Oracle官方网站上下:http://www.oracle.com/technology/tech/linux/vmware/vmware_redhat.html [@more@]Your Desktop Data Center - Experience all the Power of Oracle Database 10gOracle, VMware and Red Hat have teamed up to provide everything you need to run a full Oracle Database 10g on Linux environment on your Windows deskt
TOM的《Expert one-on-one Oracle》第二版的一些信息
名字改了,叫《Expert Oracle: 9i and 10g Programming Techniques and Solutions》。http://www.apress.com/book/bookDisplay.html?bID=10008。[@more@]Expert Oracle: 9i and 10g Programming Techniques and Solutionsis the definitive book if you’re a developer or DBA who works with Oracle-driven database applications. This fully revised edition covers both the 9i and 10g versions. It also comes with a CD containing a searchable PDF of the 8i version of the book.One of the world’s foremost Oracle experts,
Expert 101 Oracle——表
一、 表的类型: 1、 堆组织表:常用的表类型,以堆的方式管理,当增加数据时,将使用段中第一个适合数据大小的空闲空间。当删除数据时,留下的空间允许以后的DML操作重用。 2、 索引组织表:表存储在索引结构中,利用行本身排序存储。[@more@] 3、 聚簇表:几张表物理存储在一块,通常是同一个数据块上。包含相同聚簇码值的所有数据在物理上存储在一起,数据“聚集”在聚簇码周围,聚簇码用索引
Expert 101 Oracle——索引
一、索引应该是开发设计时就应该考虑的,而不是系统上线后才补充的。尤其是开发时了解应用的前提下,知道数据的流程,创建适当的索引,这对性能影响是至关重要的。[@more@] 二、索引的种类: 1、 B*tree索引:同二叉树结构相似,是主要的索引类型。包括以下几种类型 (1、)索引组织表:以索引结构作为存储方式的表。 (2、)B*tree聚簇索引:聚簇中用于存储聚簇列的索引。 &n
biti出的恢复题小记
原文链接:http://www.itpub.net/326938.html起个题目:关于数据文件恢复 这是一个假设的例子(给出的条件并不一定都须用上):周二晚,有一个 联机拷贝os文件的脚本,依次执行下面伪代码[@more@]backup controlfile;set feedback,head,echo,term... offspool filename;select 'alter tablespace '||tablespace_name || 'begin backup;' from dba_tablespaces; select 'cp ' ||name || '......' from v$datafile;select 'alter tablespace '||tablespace_name || 'end backup;' from dba_tablespaces;spool offthen run the script;但是不
Solaris下设定Oracle自启动
在Solaris下,如果操作系统启动的话,Oracle是不会随着操作系统的启动而启动,我们必须手工去启动Oracle。Oracle在Unix平台下面有一个dbstart和dbstop的shell脚本分别设定Oralce随操作系统的启动关闭而随着启动关闭,我们通过简单的设置就能使Oracle随着系统的启动关闭而执行相应动作。1、打开/var/opt/oracle/oratab,将XUE:/u01/oracle/product/10.1.0:N改为XUE:/u01/oracle/product/10.1.0/Db_1:Y。其中XUE为ORACLE的SID,/u01/oracle/product/10.1.0/Db_1为$ORACLE_HOME的目录。2、然后进行连接:&nbs
恢复案例:无归档,掉电,控制文件全部丢失恢复
1、查看测试表数据:SQL> select * from t; A---------- 1 2 4 3 5 66 rows selected.[@more@]SQL> insert into t values(7);1 row created.SQL> commit;Commit compl
恢复案例:无归档,丢失全部控制文件、日志文件恢复案例
1、查看数据看归档状态:SQL> archive log listDatabase log mode No Archive ModeAutomatic archival EnabledArchive destination d:oracleoradataxuearchiveOldest online log sequence 103Current log sequence  
RMAN恢复案例:无恢复目录,丢失全部数据文件、控制文件、日志文件恢复
RMAN恢复案例:无恢复目录,丢失全部数据文件、控制文件、日志文件恢复1、模拟介质损坏:SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> host ls /u01/oracle/oradata/XUEarchive control02.ctl indx01.dbf redo02.log undotbs01.dbfcontrol01.ctl control03.ctl redo01.log system01.dbf&n
RMAN恢复案例:丢失全部数据文件恢复
RMAN恢复案例:丢失全部数据文件恢复1、模拟数据文件丢失:SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> host rm /u01/oracle/oradata/XUE/*.dbf控制文件、日志文件必须存在。SQL> host ls /u01/oracle/oradata/XUE/archive control01.ctl control02.ctl control03.ctl redo01.log redo02.log[@more@]2、数据库启动报错:SQL> startupORACLE instance s
RMAN恢复案例:丢失非系统数据文件恢复
RMAN恢复案例:丢失非系统数据文件恢复一、数据库运行过程中丢失一个数据文件恢复1、模拟介质损坏:SQL> host rm /u01/oracle/oradata/XUE/users01.dbf[@more@]2、创建测试表验证介质损坏:SQL> create table t tablespace users as select * from all_objects;create table t tablespace users as select * from all_objects