Oracle数据库的物理存储结构之数据库控制文件详解
第2章 Oracle数据库的体系结构

因此,Oracle实例是由内存空间和Oracle 进程两部分组成。
Oracle实例结构图
1.系统全局区SGA
数据缓存区(database buffer cache) :最近 使用过的数据 。 重做日志缓冲区(redo log buffer) :记录了 用户对数据库执行的操作,被循环使用 。 共享池(shared pool) :包含了库缓存区( library cache)、数据字典缓存区(dictionary cache)、并行执行消息缓冲区(buffers for parallel execution messages),以及用于系 统控制的各种内存结构。
数据文件又可以分为以下几种:
系统数据文件 回滚数据文件 临时数据文件 用户数据文件 系统辅助数据文件 示例数据文件
2.1.2 日志文件
日志文件记录了用户对数据库的修改信息( 如增加、删除、修改),名字通常为 REDO*.LOG格式。
日志文件也叫重做日志文件或重演日志文件 (Redo Log Files)。 日志组是日志文件的逻辑组织单元,每个日志 组中有一个或多个日志文件。 同一个日志组中的多个日志文件具有相同的信 息,它们是镜相关系
用户进程和服务进程之间的对应关系是由 Oracle数据库的工作模式决定的。数据库通 常有两种工作模式:
专用服务器模式 共享服务器模式
3.后台进程(background process)
Oracle实例启动时,为了保证该实例的正常使 用,系统将为该实例启动一些后台进程。 这些进程是操作数据库的基础,不管有没有用 户连接数据库,这些进程都会被启动。
oracle 数据库物理结构

数据文件和表空间有着密切的关系,Oracle 数据 库至少要包含一个数据文件,并且数据文件是表 空间的物理组成元素,一个表空间可以包含多个 数据文件,并且每个数据文件只能惟一地属于某 个表空间。 关于“表空间”在后面会给大家详细介绍。
但如果执行介质恢复(例如数据文件意外丢失) ,则必须要用到归档日志。归档日志是非活 动重做日志的备份,数据库只有处于 ARCHIVELOG 模式时才会生成归档日志,并且 每次日志切换都会生成归档日志。
如图所示:
假定数据库只包含两个日志组,并且处于 ARCHIVELOG 模式。初始阶段LGWR 会将事务 变化写入到日志组一,当日志组一写满之后 ,LGWR 会将事务变化写入到日志组二中, 并且会促使ARCn 进程将日志组一的内容保存 到归档日志中,依此类推。
2.6.1 连接和建立会话
当客户应用需要执行SQL 语句时,首先要建立用户进程 ,同时在服务器端会自动为该用户进程派生一个新的 服务进程。默认情况下,用户进程与服务器进程是一 一对应的关系。 当客户端运行SQL 语句时,用户进程会通过网络将该 SQL 语句发送到对应的服务进程,并且由服务进程执行 该SQL 语句,服务器进程在执行了SQL 语句之后,会将 SQL 语句的结果通过网络返回到用户进程。
2.5.3 区(Extents)
数据区间简称为区,区是为段分配空间的逻辑单位 ,Oracle 在分配空间时,并不是以块为单位进行的 ,而是将多个连续的块一次性的分配给数据库对象 。这些连续的块在回收存储
空间时,也一起回收。这些连续的数据块就是数据 区间。 当创建一个数据库对象时,Oracle为这些对象创建一 个段,并分配初始区。当段中的初始区的存储空间 使用完毕后,Oracle会为段自动分配新的区,每个区 的大小不要求相同
oracle数据库体系架构详解

oracle数据库体系架构详解在学习oracle中,体系结构是重中之重,⼀开始从宏观上掌握它的物理组成、⽂件组成和各种⽂件组成。
掌握的越深⼊越好。
在实际⼯作遇到疑难问题,其实都可以归结到体系结构中来解释。
体系结构是对⼀个系统的框架描述。
是设计⼀个系统的宏观⼯作。
这好⽐建⼀栋⼤楼。
你⾸先应该以图纸的⽅式把整个⼤楼的体系架构描述出来。
然后⼀点点的往⾥⾯填充东西。
下⾯我们先以⼀个图解的⽅式对oracle体系结构有⼀个基本了解根据⽰图,便于我们记忆,⽰图分三部分组成,左侧User Process、Server Process、PGA可以看做成Clinet端,上⾯的实例(Instance)和下⾯的数据库(Database)及参数⽂件(parameter file)、密码⽂件(password file)和归档⽇志⽂件(archived logfiles)组成Oracle Server,所以整个⽰图可以理解成⼀个C/S架构。
Oracle Server由两个实体组成:实例(instance)与数据库(database)。
这两个实体是独⽴的,不过连接在⼀起。
在数据库创建过程中,实例⾸先被创建,然后才创建数据库。
在典型的单实例环境中,实例与数据库的关系是⼀对⼀的,⼀个实例连接⼀个数据库,实例与数据库也可以是多对⼀的关系,即不同计算机上的多个实例打开共享磁盘系统上的⼀个公⽤数据库。
这种多对⼀关系被称为实际应⽤群集(Real Application Clusters,RAC)RAC极⼤提⾼了数据库的性能、容错与可伸缩性(可能耗费更多的存储空间)并且是oracle⽹格(grid)概念的必备部分。
下⾯我们来详细看⼀下oracle数据库的体系架构Oracle体系架构主要有两⼤部分组成:数据库实例(Instance)和数据库⽂件(database)数据库实例指数据库服务器的内存及相关处理程序,它是Oracle的⼼脏。
与Oracle性能关系最⼤的是SGA(System Global Area,即系统全局区活共享内存区),SGA包含三个部分:1、数据缓冲区,可避免重复读取常⽤的数据;2、⽇志缓冲区,提升了数据增删改的速度,减少磁盘的读写⽽加快速度;3、共享池,使相同的SQL语句不再编译,提升了SQL的执⾏速度。
Oracle体系结构研究

Oracle体系结构研究摘要:阐述了Oracle数据库的基本架构和Oracle数据库理论中的主要概念。
Oracle体系结构由存储结构、内存结构和进程结构组成,其中,存储结构由物理存储结构及逻辑存储结构组成;内存结构由SGA和PGA组成;进程结构由用户进程和Oracle进程组成。
关键词:ORACLE体系结构;存储结构;内存结构;进程结构1 Oracle的存储结构Oracle的存储结构分为物理存储结构和逻辑存储结构。
1.1 物理存储结构主要由数据文件、控制文件、联机日志文件及数据库实例构成。
Oracle数据库中有许多初始化参数,这些参数用于对整个数据库进行设置或调整,如设置数据库名、数据库块大小、控制文件的名称和位置、数据库实例数等信息。
Oracle 把这些参数存放在一个文件中,这个文件就叫初始化参数文件。
启动数据库时,Oracle会读取参数文件中的值,并根据这些值对数据库实例(instance)进行设置。
具体说是Oracle先从初始化参数文件中获得控制文件的名称及位置,打开控制文件,然后再从控制文件中读取数据文件和联机日志文件的名称和位置,打开它们,因为表、索引等对象的数据就存放在数据文件中,从而就打开了数据库。
1.1.1 控制文件Oracle启动数据库时会访问控制文件,控制文件是在创建数据库的时候创建的,它是一个很小的二进制文件,记录了数据库的名称、创建数据库的时间、数据文件的名称和位置、联机日志文件的名称和位置及表空间等信息。
所以说一个数据库的控制文件是相当重要的,一旦被损坏,数据库将不能正常启动和运行。
所以DBA应该镜像控制文件,把每个镜像的控制文件分布到不同的物理磁盘上,发生灾难时既使其中一个控制文件被损坏,也不会使整个数据库限于瘫痪。
1.1.2 数据文件当用户在Oracle中创建数据库的时候,就创建了一个或多个数据文件,表和索引等对象的数据就物理地存放在数据文件中。
一个表的数据可能会存储在多个数据文件中,但一个数据文件只能属于一个数据库。
ORACLE数据文件和控制文件头部

ORACLE数据文件和控制文件头部第一次检查数据文件头中的Checkpoint cnt是否与对应操纵文件中的Checkpoint cnt一致.假如相等,进行第二次检查.第二次检查数据文件头的开始SCN与对应操纵文件中的结束SCN是否一致假如结束SCN等于开始SCN,则不需要对那个文件进行恢复.对每个数据文件都完成检查后,打开数据库.同时将每个数据文件的结束SCN设置为无穷大.通过下列过程我们来进一步说明一下这个内容。
我们来看下列来自操纵文件部分(选取一个文件测试):DATA FILE #4:(name #4) /opt/oracle/oradata/eygle/eygle01.dbfcreation size=0 block size=8192 status=0xe head=4 tail=4 dup=1tablespace 4, index=4 krfil=4 prev_file=0unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00Checkpoint cnt:58 scn: 0x0000.002ac8ee 08/11/2006 09:48:29Stop scn: 0x0000.002ac8ee 08/11/2006 09:48:29Creation Checkpointed at scn: 0x0000.0015078d 06/06/2006 09:41:54thread:0 rba:(0x0.0.0)................aux_file is NOT DEFINED这部分中包含的重要信息有:检查点计数: Checkpoint cnt:58检查点SCN: scn: 0x0000.002ac8ee 08/11/2006 09:48:29数据文件Stop SCN:Stop scn: 0x0000.002ac8ee 08/11/2006 09:48:29我们再看来自数据文件头的信息:FILE HEADER:Software vsn=153092096=0x9200000, Compatibility Vsn=134217728=0x8000000Db ID=1407686520=0x53e79778, Db Name='EYGLE'Activation ID=0=0x0Control Seq=979=0x3d3, File size=1280=0x500File Number=4, Blksiz=8192, File Type=3 DATATablespace #4 - EYGLE rel_fn:4Creation at scn: 0x0000.0015078d 06/06/2006 09:41:54Backup taken at scn: 0x0000.00000000 01/01/1988 00:00:00 thread:0reset logs count:0x232bee1f scn: 0x0000.0007c781 recovered at 08/10/2006 20:57:53begin-hot-backup file size: 0Checkpointed at scn: 0x0000.002ac8ee 08/11/2006 09:48:29.......................这部分中包含的重要信息有:检查点SCN: Checkpointed at scn: 0x0000.002ac8ee 08/11/2006 09:48:29检查点计数: chkpt cnt: 58 ctl cnt:57这两者都与操纵文件中所记录的一致。
oracle三个重要参数文件:pfile和spfile和init.ora

oracle三个重要参数⽂件:pfile和spfile和init.oraOracle中的参数⽂件是⼀个包含⼀系列参数以及参数对应值的操作系统⽂件。
它们是在数据库实例启动第⼀个阶段时候加载的,决定了数据库的物理结构、内存、数据库的限制及系统⼤量的默认值、数据库的各种物理属性、指定数据库控制⽂件名和路径等信息,1、pfile: 初始化参数⽂件(Initialization Parameters Files)pfile是啥呢,pfile的全名就是parameter file,参数⽂件。
pfile是⼀个可编辑的⽂本⽂件,主要内容就是数据库的配置参数,包括内存配置、数据库名、sessions、processes等。
pfile默认路径(windows):/u01/app/oracle/product/11.2.0/db1_s/dbs/initSID.oraOracle 9i之前,ORACLE⼀直采⽤pfile⽅式存储初始化参数,pfile 默认的名称为“init+实例sid.ora”⽂件路径:/u01/app/oracle/product/11.2.0/db1_s/dbs这是⼀个⽂本⽂件,可以⽤任何⽂本编辑⼯具打开。
我们可以直接使⽤指定pfile⽂件启动第⼀阶段数据库sql>startup pfile=/u01/app/oracle/product/11.2.0/db1_s/dbs/init.ora.10152018183435 //通过这个指定这个参数⽂件就可以启动这个数据库了2、spfile:服务器参数⽂件(Server Parameter Files)从Oracle 9i开始,Oracle引⼊了Spfile⽂件,spfile 默认的名称为“spfile+例程名.ora”⽂件路径:/u01/app/oracle/product/11.2.0/db_1/dbs/spfile以后,数据库默认就是读取spfile的配置启动和初始化参数,加载参数到内存中以⼆进制⽂本形式存在,不能⽤vi编辑器对其中参数进⾏修改,只能通过SQL命令在线修改。
oracle数据库 物理储存结构和原理

oracle数据库物理储存结构和原理
Oracle数据库的物理储存结构是由数据文件、控制文件和重做日志文件三部分组成的。
其中,数据文件是存储实际数据的文件,控制文件是用于记录数据库的结构信息和管理数据文件的文件,重做日志文件则是用于记录数据库中数据的变动情况,以便进行恢复操作。
Oracle数据库的数据文件是由一系列数据块组成的,每个数据块的大小可以配置为2KB、4KB、8KB、16KB等不同大小。
同时,Oracle 数据库在存储数据时采用了多种技术,包括行式存储和列式存储等,以提高数据的存储效率和检索效率。
在Oracle数据库中,数据文件的存储方式也非常灵活,可以采用裸设备方式、文件系统方式、ASM(Automatic Storage Management)方式等多种方式进行存储。
不同的存储方式具有各自的优缺点,可以根据实际需求进行选择。
除了数据文件之外,Oracle数据库的控制文件也非常重要。
控制文件不仅记录了数据库的结构信息,还记录了数据文件的位置、大小等信息,以便进行管理和维护。
同时,Oracle数据库还采用了多个控制文件的方式进行备份和恢复操作,以提高数据库的安全性和可靠性。
最后,Oracle数据库的重做日志文件也是非常重要的一部分。
重做日志文件记录了数据库中数据的变动情况,包括事务的开始、提交、回滚等操作,以便在系统故障或其他异常情况下进行恢复操作。
重做日志文件采用了循环缓冲区的方式进行存储和管理,同时还支持
多种模式的归档方式,以满足不同的业务需求。
oracle数据库运行机制和基本原理

Oracle数据库是一种关系型数据库管理系统,它采用了客户/服务器模式,可以在各种不同的评台上运行。
其运行机制和基本原理是数据库领域的重要内容,我们将通过以下几个方面来详细介绍。
1. Oracle数据库的体系结构Oracle数据库的体系结构包括实例和数据库。
实例是由一个或多个进程组成,负责处理客户端的请求和管理数据库的物理结构;数据库是由数据文件组成,用来存储数据和控制文件。
实例和数据库之间通过监听器进行通信,客户端通过监听器访问数据库。
2. Oracle数据库的运行原理Oracle数据库的运行原理包括数据库的启动和关闭过程。
数据库的启动过程包括加载实例和数据库文件、分配内存、打开数据库并监听客户端请求;数据库的关闭过程包括关闭实例和数据库文件、释放内存、关闭数据库并停止监听器。
3. Oracle数据库的存储结构Oracle数据库的存储结构包括内存结构和磁盘结构。
内存结构包括数据库SGA和PGA,SGA用来存储数据库的共享数据和控制信息,PGA用来存储客户端的私有数据;磁盘结构包括数据文件、控制文件和日志文件,数据文件用来存储数据库的数据,控制文件用来记录数据库的元数据,日志文件用来记录数据库的事务日志。
4. Oracle数据库的并发控制Oracle数据库的并发控制包括锁和多版本并发控制。
锁是用来控制对共享资源的并发访问,包括共享锁、排他锁和意向锁;多版本并发控制是一种乐观并发控制方式,每个事务都有自己的版本,可以并发访问相同的数据,不会相互影响。
5. Oracle数据库的恢复机制Oracle数据库的恢复机制包括日志文件和闪回技术。
日志文件用来记录数据库的操作,包括重做日志和撤销日志,可以用来恢复数据库的状态;闪回技术可以回滚数据库到历史状态,包括闪回查询和闪回表。
通过以上内容的介绍,我们对于Oracle数据库的运行机制和基本原理有了一定的了解。
Oracle数据库作为一种成熟的关系型数据库管理系统,其运行机制和基本原理对于数据库管理员和开发人员来说是非常重要的,可以帮助他们更好地理解、管理和优化数据库。
探讨Oracle数据库管理之控制文件

探讨Oracle数据库管理之控制文件杜战伟【摘要】控制文件作为Oracle数据库管理的物理文件之一,数据库的名字以及数据文件的位置信息由它记录。
控制文件一旦损坏,电脑将无法正常工作。
因此控制文件十分重要,其管理的重点在于防御。
本文将对控制文件的相关内容作介绍,为安全管理Oracle控制文件提出了相关的方法。
%The control file was one of the physical files of the Oracle database management,the name and loaction of data files were recorded by it.Once the control file is damaged,the computer will not work properly.So the control file is very important,the focus of its management lies in defense.This article will introduce the related content of the control file, and put forward the related methods for the safety management of Oracle control file.【期刊名称】《电子测试》【年(卷),期】2016(000)010【总页数】3页(P90-91,98)【关键词】Oracle;数据库管理;控制文件【作者】杜战伟【作者单位】西安秦皇医院信息部,西安,710016【正文语种】中文控制文件是一个很小的二进制文件,用于对数据库的维护和记录,无论何时打开Oracle数据库,在此之前Oracle服务器都要对控制文件进行访问。
控制文件一旦出现问题,会导致Oracle数据库无法正常工作。
数据库的启动以及正常运行都离不开控制文件。
oracle控制文件

STARTUPБайду номын сангаасNOMOUNT;
5, 使用CREATE CONTROLFILE语句为数据库创建一个新的控制文件。
在丢失了联机重做日志组、或者重命名了数据库必须指定RESETLOGS选项。
6, 在离线存储设置上存储新控制文件的备份。
7, 为数据库编辑CONTROL_FILES初始化参数,以便指出现在所有控制文件都是第5步创建的数据库的一部分。
什么是控制文件:
每个ORACLE数据库都有一个控制文件。控制文件是一个小型的二进制文件,它可以记录数据库的物理结构,其中包含以下内容:
数据库名称
相关的数据文件和联机重做日志文件的名称和位置
数据库创建的时标
当前日志的序号
检验点信息
8, 如果有必要可以恢复数据库。
9, 打开数据库。
备份控制文件:
1,将控制文件备份为二进制文件(现有控制文件的复制品)
ALTER DATABASE BACKUP CONTROLFILE TO ‘g:\JYSH\BAK\CONTROL.BAK';
2,制作以后可用于重新创建控制文件的SQL语句:
无论何时打开数据库,控制文件必须能够由ORACLE数据库服务器写入内容。没有控制文件,数据库就不能装载。
在不同的磁盘上复用控制文件
每个ORACLE数据库都应该至少有两个控制文件,它们分别存储在不同的磁盘上。当一个磁盘失败导致控制文件损坏,可以由另一个恢复损坏的控制文件。
依据数据库初始化参数文件中的初始化参数CONTROL_FILES列出的所有文件名,ORACLE会将相应的内容写入到所有这些控制文件中。
Oracle控制文件

Oracle控制文件数据库控制文件是一个很小的二进制文件,在其中包含了关于数据库物理结构的重要信息。
通过在加载数据库时读取控制文件,Oracle才能找到自己所需的操作系统文件(数据文件、重做日志文件等)。
控制文件对于数据库的成功启动和正常运行是至关重要的。
在加载数据库时,实例必须首先找到数据库的控制文件。
如果控制文件正常,实例才能加载并打开数据库。
但是如果控制文件中记录了错误的信息,或者实例无法找到一个可用的控制文件,数据库将无法加载,当然也法打开。
在数据库运行的过程中,Oracle会不断地更新控制文件中的内容,因此控制文件必须在整个数据库打开期间始终保持可用状态。
如果由于某种原因导致控制文件不可用,则数据库将会崩溃。
每个数据库必须至少拥有一个控制文件,一个数据库虽然可以同时拥有多个控制文件,但是一个控制文件只能属于一个数据库。
在数据库的控制文件中包含有关于该数据库物理结构的信息,控制文件中的主要信息包括:数据库的名字、检查点信息、数据库创建的时间戳、所有的数据文件、重做日志文件、归档日志文件信息和备份信息等。
有了控制文件中的这些信息,Oracle就可以确定那些文件是数据文件,现在的重做日志文件,这些都是系统启动和运行的基本条件。
由于控制文件是非常重要的,一般采用多个镜相复本来保护控制文件,或采用RAID来保护控制文件。
控制文件的丢失,将使数据库的恢复变的很复杂。
控制文件信息可以从V$CONTROLFILE中查询获得:SQL> select name from v$controlfile;NAME-------------------------------------------------D:\APP\MANAGER\ORADATA\ORCL\CONTROL01.CTLD:\APP\MANAGER\ORADATA\ORCL\CONTROL02.CTLD:\APP\MANAGER\ORADATA\ORCL\CONTROL03.CTL。
oracle物理结构

oracle物理结构在一个服务器中,每一个运行的数据库都有一个数据库实例(instancename) 相联系。
数据库启动时,系统首先在服务器内存中分配系统全局区(SGA),即构成了oracle的内存结构。
然后启动若干个常驻内存的操作系统进程,即组成了oracle的进程结构。
除此之外,还有数据库的物理与逻辑结构。
数据库体系统结构图可以参考第一篇。
在接下来的篇幅中将分五篇来详细说明oracle数据库的体系结构。
•oracle物理结构•oracle逻辑结构•oracle内存结构•oracle进程结构•oracle连接配置结构本篇说明物理结构。
物理结构,即oracle数据库使用的操作系统文件结构。
对于数据库物理结构文件,不同的oracle版本,不同的操作系统平台上有不同的存储目录结构。
•winnt | d:/oracle/product/10.1.0/oradata/DB_NAME/*.*(oracle 10g);d:/orant/database/*.*(oracle7,oracle8)•Unix | /home/app/oracle/product/10.1.0/oradata/DB_NAME/*.*(10g);/home/app/oradata/db_name/*.*(8i,9i)数据库的物理结构文件按其作用可以分为三类:•数据文件•日志文件•控制文件物理存储结构是指从物理角度分析数据库的构成,即Oracle数据库创建后所使用的操作系统文件。
从物理存储结构上分析:每一个Oracle数据库是主要由三种类型的文件组成:数据文件、日志文件和控制文件,另外还包括一些参数文件。
其中:数据文件的扩展名为.DBF;日志文件的扩展名为.LOG;控制文件的扩展名为.CTL。
一、数据文件数据文件(Data File)用于存储数据库数据的文件,如表中的记录,索引,数据字典信息等都存储于数据文件中。
在存取数据时,Oracle数据库系统首先从数据文件中读取数据,并存储在内存中的数据缓冲区中。
Oracle 控制文件简介

Oracle 控制文件简介控制文件是Oracle数据库最重要的物理文件,它以二进制文件的形式在。
不仅记载了数据库的特理结构信息(即构成数据库的数据文件和日志文件),在装载和打开数据时也需要这些文件,而且它们还记载了日志序列号、检查点和日志历史信息,同步和恢复数据库时需要这些信息。
在创建数据库时会创建控制文件,如果数据库发生改变,则系统会自动修改控制文件,以记录当前数据库的状态。
控制文件主要包括如下几项内容:●数据库名(database name)和标识(SID)●数据库创建时间戳●表空间名●数据文件、重做日志文件名字和位置●当前重做日志文件序列号●检查点信息●UNDO SEGMENT的起始和结束●重做日志归档信息●备份信息控制文件是一种较小的Oracle数据库文件,尺寸一般在2M~10M之间,变化尺寸主要由永久参数和RMAN信息决定。
执行CREATE DATABASE命令建立数据库时,通过设置永久参数可以设置Oracle数据库的最大实例个数、最大数据文件数量、最大日志组数量、最大日志成员数量以及最大日志历史个数等信息。
为了存放数据文件、日志组、日志成员、日志历史等信息,控制文件需要为它们提供预留空间。
这些永久参数包括:●MAXINSTANCES 用于指定可以同时访问数据库的最大例程数量。
●MAXDA TAFILES 用于指定Oracle数据库的最大数据文件数量。
●MAXLOGFILES 用于指定Oracle数据库的最大日志组数量。
●MAXLOGMEMBERS 用于指定每个日志组的最大日志成员数量。
●MAXLOGHISTORY 用于指定控制文件可记载日志历史的最大数量。
使用RMAN执行备份操作时,RMAN会将备份信息记载到控制文件中。
初始化参数CONTROL_FILE_RECORD_KEEP_TIME指定了RMAN备份信息在控制文件中的保留时间,其默认值为7。
该参数设置越大,RMAN备份信息的保留时间也就越长,控制文件也会越大。
第6章物理存储结构

ALTER TABLESPACE USERS OFFLINE;
在操作系统中重命名数据文件或移动数据文件到新的位置。分别将 USERS02.DBF和USERS03.DBF文件重命名为USERS002.DBF 和USERS003.DBF。 使用ALTER TABLESPACE„RENAME DATAFILE„TO语句进行 操作
将ORCL数据库USERS表空间的数据文件 USERS02.DBF联机。
ALTER DATABASE DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ ORCL\USERS02.DBF' ONLINE;
2009
Oracle 10g 数据库基础教程
非归档模式下数据文件可用性的改变
数据文件依附于表空间而存在,创建数据文件就 是向表空间添加文件 在创建数据文件时应该根据文件数据量的大小确 定文件的大小以及文件的增长方式。 语法
ALTER TABLESPACE…ADD DATAFILE ALTER TABLESPACE…ADD TEMPFILE
2009
Oracle 10g 数据库基础教程
向ORCL数据库的USERS表空间中添加一个大小 为10 MB的数据文件。
ALTER TABLESPACE USERS ADD DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ ORCL\USERS02.DBF' SIZE 10M;
向ORCL数据库的TEMP表空间中添加一个大小为 5 MB的临时数据文件。
ALTER TABLESPACE USERS RENAME DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS02.DBF', 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS03.DBF' TO 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS002.DBF', 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS003.DBF'; ALTER TABLESPACE USERS ONLINE;
Oracle 数据库入门教程

(2)内存结构(SGA) 占OS内存的60-70%,大小可由参数文件内参数计算 shared pool(共享池), database buffer cache(数据缓冲区),
redo log buffer(重做日志缓冲区) (如以下图所示)
SGA=share_pool_size+db_block_size*db_block_buffers +log_buffers
%svrmgrl SVRMGR>connect internal SVRMGR>startup mount SVRMGR>alter database datafile ‘/directory/abc.dbf’ offline; SVRMGR>alter database open; SVRMGR>drop tablespace abc;
一、Oracle 体系结构 (1)物理结构 datafiles redo log files
数据文件 日志文件
control files parameter file 控制文件 参数文件
data files
redo log files
control file
parameter iles
*.dbf
*.log
( 系统管理员能在SQLDBA状态,查看视图dba-extents,dba-segments, dba-tablespace,dba-data-files查看所有的extent,segment,tablespace和
datafile)
common and variable
header block 结构 块地址,段类型 85-100bytes
仅启动instances
oracle 表空间物理文件的名称及大小 路径

oracle 表空间物理文件的名称及大小路径今天我要写的主题是“Oracle 表空间物理文件的名称及大小路径”。
这是一个非常具体的 Oracle 数据库管理主题,涉及到数据库表空间的物理存储细节,对于Oracle数据库管理员和相关人员来说是非常重要的知识点。
通过本文的阐述,相信读者们能够对这一主题有更加深入的了解和认识。
1. Oracle 表空间的概念及作用Oracle 数据库中的表空间是逻辑存储单元,用于组织和管理数据库中的数据对象,如表、索引等。
它是由一个或多个数据文件组成的,可以理解为是数据库的物理存储空间。
每个表空间都有一个名字,存储着特定的数据对象,对于数据库的性能和管理具有重要作用。
2. 表空间的物理文件表空间的物理文件是指表空间实际存储数据的文件,它们在操作系统中以文件的形式存在。
每个表空间可以由多个物理文件组成,这些文件通常以. dbf 作为后缀名。
在Oracle数据库中,管理物理文件的大小、名称和路径是数据库管理员的一项基本工作。
3. 物理文件的名称及大小在Oracle数据库中,物理文件的名称一般由表空间名和文件序号组成,例如:users01.dbf。
对于每个物理文件,数据库管理员需要了解其文件名和大小,以便进行存储管理和性能优化。
4. 物理文件的路径物理文件的路径指的是这些文件在操作系统中的存储路径,这也是数据库管理员需要了解的重要信息之一。
合理的文件路径设置可以更好地管理和维护数据库的存储空间。
在日常的数据库管理工作中,了解和掌握表空间物理文件的名称、大小和路径是至关重要的。
这些信息不仅可以帮助管理员更好地管理数据库,还可以为日后的性能优化和故障恢复提供有力支持。
总结:通过本文的阐述,相信读者们对于Oracle表空间物理文件的名称及大小路径有了更深入的了解。
对于数据库管理员来说,掌握这些信息可以更好地管理和维护数据库,保证数据库的高效、稳定运行。
希望本文的内容对大家有所帮助。
Oracle控制文件

Oracle控制⽂件⼀、控制⽂件的作⽤Control File 是⼀个较⼩的⼆进制⽂件,描述数据库结构,包括:01、数据库建⽴的⽇期;02、数据库名;03、数据库中所有数据⽂件和⽇志⽂件的⽂件名及路径;04、恢复数据库时所需的同步信息;05、在打开和存取数据库时都要访问该⽂件;记录控制⽂件名及路径的参数为:CONTROL_FILES总结以下⼏点:01.⼆进制⽂件;02.记录了数据库当前实例的结构和⾏为,数据⽂件⽇志⽂件的信息,维护数据库⼀致性;03.参数⽂件中定义了控制⽂件的位置和⼤⼩;04.很⼩的⼆进制⽂件,⼀般不超过 100MB;05.mount 阶段 open 以后,⼀直在⽤;06.⼀套控制⽂件只能连接⼀个 database;07.可以分散放置,⾄少⼀份,最多⼋份;控制⽂件相关视图:01. v$controlfile ----> 列出实例的所有控制⽂件的名字和状态02. v$parameter ----> 列出所有参数的位置和状态(where name='control_files')03.v$controlfile_recode_section ----> 提供控制⽂件的记录部分的信息04.show parameter control_files ----> 列出控制⽂件的名字、状态和位置select * from v$controlfile;select name,type,value from v$parameter where name like '%control%';select * from v$controlfile_record_section;查看控制⽂件中关于数据⽂件中的数据记录信息:(注意 DATAFILE ⼀定要⼤写,否则会提⽰"未选定⾏")在 Linux 环境下:Control File 丢失(丢失其中⼀个,不全部丢失),系统还是可以 checkpoint 和 switch logfile 的。
Oracle体系结构详解

Oracle体系结构就是围绕这张图展开的,要想深入了解oracle,就必须把这张图搞明白。
如图:一、基本组成:Oracle server:一般情况下是一个instance和一个database组成1个instance只能对应一个数据库。
特殊:1个数据库可以有多个instance(rac)一台服务器上同时可装多套版本的数据库软件,每个数据库软件可建多个数据库,但是每个数据库只对应一个instance,也可以理解成每个数据库只有一个SID 。
利用DBCA建出的每个库都是相对独立的,在同一服务器上如果创建多库必须将环境变量的参数文件做区分,并且在对实例切换时需如下操作:connect 用户名/密码@实例的服务名Oracle Instance:是由内存(SGA)和后台进程(backupground Process)组成通过instance来访问database一个实例只能打开一个数据库Oracle database:数据文件(Data files):数据文件永远存储数据库的数据,包括数据字典、用户数据(表、索引、簇)、undo数据等重做日志(Redo log):“先记后写”重做日志用于记录数据库的变化,当进行例程恢复或介质恢复时需要使用重做日志执行DDL或DML操作时,事物变化会被写到重做日志缓冲区,而在特定的时刻LGWR会将重做日志缓冲区中的内容写入重做日志。
控制文件(Control file)控制文件用于记录和维护数据库的物理结构,并且每个Oracle数据库至少要包含一个控制文件。
归档日志(Archive log):是非活动(Inactive)重做日志的备份。
口令文件(Password file):用于验证特权用户(具有SYSDBA、SYSOPER权限的特殊数据库用户)参数文件(Parameter file):用于定义启动实例所需要的初始化参数,包括文本参数文件(pfile)和服务器参数文件(spfile)(二进制文件放入裸设备,引入spfile)User and Server process :在执行sql语句时产生的进程,每一个连接,oracle server创建一个session,产生一个server process,在client发起一个connection时就产生了一个user process。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle数据库中,数据库控制文件维护着数据库的全局物理结构,用以支持数据库成功的启动和运行。
创建数据库时,同时就提供了与之对应的数据库控制文件。
在数据库使用过程中,Oracle不断的更新数据库控制文件,所以只要数据库是打开的,数据库控制文件就必须处于可写状态。
如果,犹豫某些原因控制文件不能被访问,那么数据库也就不能正常的工作了。
每一个控制文件只能与一个Oracle数据库相关联。
数据库控制文件包含了数据库实例的启动和正常操作时,访问数据库所需的关于数据库的信息。
数据库控制文件的内容只有Oralce 可以修改,数据库管理员和用户都不能对其进行编辑。
控制文件包含了以下信息:
∙数据库名称
∙数据库创建的时间戳
∙相关的数据文件、重演日志文件的名称和位置
∙表空间信息
∙数据文件脱机范围
∙日志历史
∙归档日志信息
∙备份组和备份块信息
∙备份数据文件和重演日志信息
∙数据文件拷贝信息
∙当前日志序列数
∙检查点(checkpoint)信息
数据库名称和时间戳源自数据库创建之时,数据库名称或是来自DB_NAME初始化从参数,或者来自Cteate Database语句使用的名称。
每当数据文件或重演日志文件被添加内容、重新命名或者直接从数据库删除时,控制文件都要进行更新以反应物理结构的变化。
记录下这些变化后,Oracle就可以:在数据库启动的时候,能够确定并打开数据文件和重演日子文件。
在必须要恢复数据库的时候,能够确定哪些文件是必须的、哪些文件是可用的。
PS:如果数据库的物理结构发生了改变(使用了Alert Database语句),用户应该立刻备份控制文件。
控制文件还记录了关于检查点的信息。
每3秒,检查点进程(CKPT)就会在控制文件里记录重演日志文件的检查点位置信息。
这些信息用于数据库的恢复过程,告诉数据库在这一点之前的已经记录下的重演条目不必进行恢复,因为它们已经被写入数据文件了。
由于控制文件对数据库的至关重要,所以联机存储着多个副本。
这些文件一般存储在各个不同的磁盘上,以便将因磁盘试下哦引起的潜在危险降至最低程度。
Oracle支持对同一个数据库并发的打开、书写多个相同的控制文件。
通过为一个数据库在不同的磁盘上保存多个控制文件,可以幼小的降低对于控制文件可能发生的单点失败。
例如,包含一个控制文件的磁盘崩溃了,如果Oracle试图访问这个被破坏的文件,当前实例就会失败,但是如果在不同的磁盘上保存了当前控制文件的复件,就可以重启一个实例而无需进行数据库恢复。
如果一个数据库所有的控制文件在操作的时候都丢失了,那么数据库实例就会失败,必须要进行介质恢复(media recover)。
但是介质恢复必须要使用一个稍微旧一点的控制文件的备份,因为当前的控制文件备份不可用。
所以为了保护控制文件,必须要注意以下几个方面:
每一个数据库都要使用多路复制的控制文件;
把每一个控制文件的复件保存在不同的物理磁盘上;
使用操作系统的镜像机制;
监控备份。
来源:网络编辑:联动北方技术论坛。