oracle 中的控制文件和数据文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 中的控制文件和数据文件相关的知识,希望对你有一定的参考价值。

1、数据文件:

Oracle数据库中每个表空间(tablespace)都是由一个或多个物理数据文件(datafile)构成的。

当一个数据文件(datafile)首次被创建时,为其分配的磁盘空间被格式化为Oracle格式,此时其中尚不包含任何用户数据。Oracle将使用这些空间存储属于(
与此数据文件对应的)表空间的段(segment),这些空间专为Oracle使用。随着表空间内的数据增长,Oracle使用数据文件中的可用空间为段分配新的数据扩展(extent)。

2、控制文件

控制文件(control
file)是一个二进制文件,供数据库启动及正常工作时使用。

在数据库运行过程中,控制文件会频繁地被Oracle修改,因此数据库处于开启(open)状态时控制文件必须可写。如果控制文件因故不能访问,数据库
也将无法正常工作。

每当添加,重命名,或移除数据库中的数据文件(datafile)及重做日志文件(redo
log
file)时,控制文件(control
file)就会被更新以反映这些数据库物理结构变化。
参考技术A 控制文件主要是用来启动的
Oracle的启动分为三步

umount
mount
open
第一步启动到umount
这是Oracle会读取参数文件spfile
pfile
来启动实例
但是这时候并不知道启动哪一个数据库所以是umount
第二步找到控制文件,然后实例就会与数据库真的的连接上,所以是mount
第三步就是为了恢复上次非正常关闭没有提交的事务,回滚,保持数据的一致性
数据文件主要就是存放数据信息的,你的每一个记录都在数据文件中存放
参考技术B 控制文件是oracle数据库启动时使用的文件,里面存放了数据库结构的一些信息,例如:数据库的名称、实例名称、数据文件位置、表空间、日志文件等等信息;
数据文件是oracle数据库实际存放数据的地方,例如你利用insert语句插入的数据,首先是在内存中,然后oracle会根据它自己的机制,写入到数据文件中;
明白了吗?

以上是关于oracle 中的控制文件和数据文件的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 物理结构 文件-控制文件

oracle中控制文件和数据字典的区别

控制文件,日志文件,数据文件

Oracle控制文件的作用

oracle添加控制文件,ORA-00214: 错误

oracle 各种文件的作用