Oracle体系结构之物理结构
物理结构就是oracle数据库创建后使用的操作系统物理文件,是一些能看得见,实际存在的东西,存放在Oracle目录下,通常包含以下几类
- 数据文件
- 控制文件
- 重做日志文件
- 参数文件
- 归档日志文件
- 告警文件
数据文件(Data Files)
每个oracle数据库必须至少有一个数据文件,用于存放数据库数据,通常为.dbf后缀
多个数据文件应分放在不同的disk上以提高存取速度
数据文件通常存储系统数据、数据字典数据、索引数据以及用户存储的数据等
数据文件特性
- 每个数据文件对应一个数据库,一个数据库可以对应多个数据文件
- 数据文件可以自动扩展
- 数据文件专属于一个表空间,一个表空间可以拥有多个数据文件。
控制文件(Control files)
控制文件是一个很小的二进制文件,通常为.ctl后缀
存放数据库的物理结构信息,这些物理结构信息包括: 数据库的名字、数据文件和联机日志文件的名字及位置、创建数据库时的时间戳
数据库在启动的时候需要访问控制文件,从中读取数据文件、日志文件的信息
随着Oracle的运行,数据库将不断更新控制文件;相对应的一旦控制文件损坏,数据库便会发生运行故障。
重做日志文件(Redo Log files)
重做日志文件用于记录数据库所有修改信息的文件,通常为.log后缀,用于保证数据库的安全,实现数据库的备份和恢复。
参数文件(Parameter file)
参数文件记录了Oracle数据库的基本参数信息,主要包括数据库名、控制文件所在路径等。
参数文件包括文本参数文件(PFILE)和服务器参数文件(SPFILE),前者为init.ora,后者为spfile.ora或spfile.ora的二进制文件。
在数据库启动的时候就会读取参数文件,然后根据参数文件中的参数来分配SGA并启动一系列的后台进程。
归档日志文件(Archived Log files)
归档日志文件用来对写满的重做日志文件进行保存复制。其目的是为了长期保存日志以便于恢复。
数据库要运行归档模式下,如果数据不运行归档模式下,那么重做日志就循环覆盖写
告警文件
告警文件用于记录数据库启动后,用户操作上出现的问题或者数据库本身的问题,它时刻伴随着数据库。