您的位置:首页 > 数据库 > Oracle

ORACLE学习笔记之物理结构和逻辑结构

2007-05-31 16:10 543 查看
◆ Oracle数据库的物理结构

主要由以下关键文件组成:

● 数据文件(data files)
ü 每个Oracle数据库包含一个或多个数据文件,但一个数据文件只属于一个数据库。
ü 一个或多个数据文件组成一个称为表空间的数据库存储的逻辑单元。
ü 通常对数据文件的读取都是从缓存中进行的,如果缓存中没有,则从会将相关的数据先读到缓存中。
ü 为了减少硬盘的访问量和提高性能,通常对数据文件的修改不会马上写到数据文件上,而是先存到(pool)到内存中,然后一次性写到数据文件中去。这是由数据库写进程(database writer process, DBWn)决定的。
● 控制文件(control files)
ü 每个Oracle数据库有一个控制文件。
ü 控制文件规定了数据库的物理结构。比如,它包含了一下信息:数据库名称,数据文件和重做日志文件的名称和地址,以及数据库创建的时间戳。
ü Oracle会同时维护许多控制文件的备份,以防止控制文件受到破坏。
ü 一旦数据库实例被启动,它的控制文件就会确定数据库运行时需要操作的数据文件和重做日志文件。
ü 当数据库的物理组成被改变时(比如创建了新的数据文件和重做日志文件),Oracle都会自动更新控制文件。
ü 控制文件还可用于数据库恢复。
● 重做日志文件(redo log files)
ü 每个Oracle数据库拥有两或多个重做日志文件。重做日志文件由重做日志记录组成。
ü 重做日志的主要功能就是记录对数据所做的所有改变。因而当数据文件有任何改变时,都有可能将数据库恢复到某一时点。例如,当发生断电时,保存在内存中的数据都将丢失,但因为对数据库的所有操作都已记录在重做日志文件中,Oracle可以将数据库恢复到断电发生的时点。(没有透彻地明白)
ü 为避免重做日志文件受到损坏,Oracle同样会对它进行备份。
● 归档日志文件(archive log files)
ü 当数据库处于归档模式时,Oracle会自动将重做日志文件归档。
● 参数文件(parameter files)
ü 参数文件包含了一系列数据库及其实例的配置参数。
● 警告和跟踪日志文件(alert and trace log files)
ü 服务器和后台进程会将其检测到的内部错误和警告消息按时间顺序写入到与其相关的跟踪文件中去。
ü 警告和跟踪日志文件除了用于数据库管理员跟踪和解决问题,还可用于数据库调优。
● 备份文件(backup files)
ü 备份和恢复包含用户管理(user-managed)的备份与恢复和服务器管理(sever-managed)的备份与恢复。

◆ Oracle数据库的逻辑结构
● 表空间(backup files)
ü 数据库被划分为称为表空间的逻辑存储单元。
ü 每个数据库划分为一个或多个表空间,并且为每个表空间创建一个数据文件用以保存表空间的逻辑结构。
ü 每个Oracle数据库包含一个SYSTEM表空间和一个SYSAUX表空间。这些表空间是在数据库创建时Oracle自动生成的,并且系统默认都将它们生成为小文件表空间(smallfile tablespace)。
ü Oracle也允许用户生成大文件表空间(bigfile tablespace)。这使得Oracle能利用64位系统的优势来创建大的文件。这样可以使得当前大量的数据文件对用户来说透明,而只需操作表空间即可。
ü 在线(online)表空间与离线(offline)表空间。在线是指可以访问(accessible),离线是指不可访问。我们可以通过指定表空间在线或是离线而使数据的一部分或全部可用或不可用,提高了数据管理的灵活性。
● Oracle数据块(Oracle data blocks)
ü Oracle数据库将数据块作为最小的数据粒度(granularity)。数据块的大小由初始化参数DB_BLOCK_SIZE指定。
● 区(extents)
ü 区由连续的数据块组成,用来存储特定类型的信息。
● 段(segments)
ü 段由区组成,是为某个特定逻辑结构分配的区的集合。
ü 段包括数据段、索引段、临时段、回滚段。
ü Oracle给段动态地分配区,也就是说,当段中的区被用完时,Oracle会再分配所需的区。因此,段中的区有可能不连续。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: