Oracle数据库结构概述

数据库 Oracle
oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。既然oracle数据库这么强大,那么久让我们更深入的去了解oracle数据库。

导读:ORACLE数据库包含若干数据文件,数据文件存储数据库数据,包括表、索引等等。对于很多的初学者来说,对Oracle数据库不是很了解,那么接下来就从最基础的开始学习。
一、物理结构:

1、数据文件

ORACLE数据库包含若干数据文件,数据文件存储数据库数据,包括表、索引等等。数据文件的几个特点:

  1)一个数据文件只允许分配给一个数据库

  2)数据文件可设置为自动扩展

  3)一个或多个数据文件构成表空间

  在进行数据库操作的时候,数据库先从内存寻找要操作的数据,如果没有找到的话,再从数据文件取出数据放在内存中,然后才对内存中的数据进行相关的操作。操作完的数据并没有立即写到数据文件中(这样减少了磁盘的IO),而是放在内存中,然后由DBWn进程决定何时批量写入数据文件。

2、控制文件

每一个数据库都有一个或多个控制文件,控制文件包含了数据库的物理结构,包括:

  1)数据库名

  2)数据文件名及位置

  3)重做日志文件名及位置

  4)数据库的建立时间等等

  一般一个数据库都有若干个控制文件镜像。数据库在打开的时候(ALTER

  DATABASE OPEN),会读取控制文件中的信息来打开数据库。当数据库的物理结构发生变化的时候,比如增加一个数据文件、一组重做日志等等,控制文件都会自动地做相应的修改。在数据库物理结构发生变化后,***重新备份一下控制文件,用于数据库恢复。

3、重做日志文件

重做日志中记录了数据的变化。一般一个数据库都会有两到三组重做日志文件。同一日志组的镜像***分布于不同的磁盘上。

4、归档日志

当数据库启动归档的时候,重做日志会被自动归档到指定的位置。

5、初始化参数文件

包含了数据库启动时的配置信息

6、警告和跟踪日志文件

  1)跟踪文件:每一个后台进程都有一个单独的跟踪文件,比如当系统发现某一个进程有问题的时候,相关的信息就会写到相应的跟踪文件中。可以从数据库的跟踪文件来发现和调试数据库的错误。

  2)警告文件,也叫警告日志。是一个特别的跟踪文件,它记录着数据库启动、运行中的相关信息,它是按时间顺序进行记录的。

7、备份文件

#p#

二、逻辑结构

  1、表空间:相关逻辑对象的集合。在oracle10g中,在创建数据库的时候就自动创建了SYSTEM和SYSAUX表空间。

  2、数据块:数据存储在数据块中,一个数据块的大小(DB_BLOCK_SIZE)由操作系统块来决定。可以指定5种,分别为2K、4K、8K、16K、32K。

  3、区:一系列连续的数据块组成区,区存储特定类型的数据,比如索引,表等等。

  4、段:由一系列区组成段。

  1)数据段:对于每一个非聚集表有一数据段,表的所有数据存放在该段。每一聚集有一个数据段,聚集中每一个表的数据存储在该段中。分区表中的每一个分区有一个数据段,分区中的数据存储在该段中。

  2)索引段:每一个索引有一索引段,存储索引数据。分区索引中的每一分区有一个索引段。

  3)回滚段:用于临时存储要撤消的信息,这些信息用于生成读一致性数据库信息,在数据库恢复时使用,回滚未提交的事务。系统回滚段用于处理系统事务,不建议用户使用系统回滚段来做其它操作。

  4)临时段:当一个SQL语句需要临时工作区时,由ORACLE建立临时段。当语句执行完毕,临时段的区退回给系统。

本篇文章主要是围绕Oracle数据库的最基础的介绍,对于很多刚开始接触或是很喜欢Oracle数据库但没学过的人们是很有用处的,首先打下坚实的基础,再去深入的研究就会容易的多,

【编辑推荐】

  1. Oracle数据库的25条基本知识
  2. Oracle数据库性能优化策略的选择
  3. Oracle数据库系统使用经验
责任编辑:迎迎 来源: 比特网
相关推荐

2011-05-24 14:27:42

2011-05-20 10:30:20

ORACLE数据库性能优化

2009-09-04 09:54:59

数据库名

2009-11-19 15:57:34

Oracle 10g数

2011-05-20 09:22:43

Oracle数据库体系结构

2010-04-15 13:01:25

Oracel数据库

2011-05-19 13:49:07

Oracle物理结构

2010-04-15 14:03:37

Oracle数据库

2011-08-03 13:28:08

Oracle数据库数据库控制文件

2009-09-18 13:58:00

LINQ查询数据库

2010-04-09 17:08:17

Oracle数据库

2010-04-12 15:17:40

dump Oracle

2010-04-15 13:10:09

Oracle系统结构

2010-04-01 16:40:17

Oracle数据库

2010-04-23 09:23:44

Oracle 数据库

2011-05-26 10:30:12

Oracle数据库约束

2011-03-10 13:24:26

2015-08-21 12:59:38

Oracle数据库

2011-03-16 08:54:45

Oracle数据库索引

2011-05-19 13:25:14

Oracle数据库
点赞
收藏

51CTO技术栈公众号