与逻辑存储结构相比,物理存储结构相对简单并且更容易理解。但是物理存储结构并不是独立存在的,它与数据库逻辑存储结构之间有着不可分割的联系。从整体来看,Oracle的数据在逻辑上存储在表空间中,而在物理上存储在表空间所对应的数据文件中。
数据库物理存储结构主要包括3类物理文件:数据文件、控制文件和重做日志文件。除此之外,Oracle数据库还具有一些参数文件。
1.数据文件
数据库中的数据在物理上保存保存在若干个操作系统文件中,这些操作系统文件就是数据文件。一个表空间在物理上对应一个或多个数据文件,而一个数据文件只能属于一个表空间。数据文件是操作系统文件,Oracle通过表空间创建数据文件,从硬盘中获取存储数据所需的物理存储空间,一个数据文件只能属于唯一的一个表空间。
在存取数据时,Oracle数据库首先从数据文件中读取数据,并存储在内存的数据缓冲区中。查询数据时,如果查询的数据不在数据缓冲区中,则这时Oracle数据库进行启动相应的进程从数据文件中读取数据,并保存到数据缓冲区中。修改数据时,对数据的修改保存在数据缓冲区中,然后由Oracle的相应后台进程将数据写入到数据文件中。这样的存取方式减少了磁盘的I/O操作,提高了系统的响应性能。
在为数据库创建表空间时,Oracle将同时创建该表空间的数据文件。在表空间中创建数据库对象时,是无法指定使用哪一个数据文件来进行存储的,只能由Oracle负责为数据库对象选择一个数据文件,并在其中
分配物理存储空间。一个数据库对象的数据可以全部保存在一个数据文件中,也可以分布存放在同一个表空间的多个数据文件中。
数据文件的大小在创建时确定。当表空间中的物理存储空间不足时,可以通过3种方式来增加存储空间。
1.为表空间追加新的数据文件
2.通过手工方式扩大现有的数据文件
3.配置数据文件为自动增长方式。当数据文件需要更多的存储空间时,Oracle会自动增大数据文件。
查看数据文件方式
select name from V$datafile;
数据文件大致可以分为以下几类:
1.系统数据文件 SYSTEM_01.DBF和SYSAUX01.DBF存放系统表和数据字典,一般不放用户的数据,但是用户脚本如过程、函数、包等却使保存在数据字典中的。
2.撤销段文件 UNDOTBS01.DBF对应撤销表空间。如果数据库进行对数据的修改,那么就必须使用撤销段,撤销段用来临时存放修改前的数据。
3.用户数据文件 USERS01.DBF和EXAMPLE01.DBF用于存放用户数据。其中,EXAMPLE01.DBF文件存放实例方案中的数据
临时数据文件的信息只能通过数据字典视图DBA_TEMP_FILE和动态性能视图V$TEMPFILE来查看。
阅读(1350) | 评论(0) | 转发(0) |