先说文件:
与instance(实例)相关联的文件有:
参数文件------告诉oracle实例在哪里寻找控制文件,例如某个内存结构有多大。init.ora
在磁盘的 init%ORACLE_SID%.ora( Windows 下) 找到参数文件。
(参数文件不是必须在某个特殊的位置的,当启动一个实例时,可以使用startup pfile =filename
数据文件------ 用于数据库(包括表、索引、以及其他部分)
任何真正的数据至少有两个文件: 一个是系统 SYSTEM数据文件,一个是用户USER数据文件。
tablespace 在Oracle中是一个逻辑存储容器,将在表空间中创建段,不规定盘区必须在一个指定的文件中。
a, 数据库由一个或多个表空间组成。
b,表空间由一个或多个数据文件组成,一个表空间包含段。
c, 段由一个或多个盘区组成,段存在于表空间中,但在表空间中可以有许多数据文件中的数据。
d,盘区是在磁盘中连续的块的组。一个盘区在一个表空间中,而且总在表空间中的单一的文件中。
e,块是数据库中最小的分配单元,块是数据库使用的最小I/O单元。
segment段就是数据库对象,它消耗存储空间---对象,如表、索引、回滚段等,当创建表的时候就将创建一个表段,当创建一个分区表时,即在每个分区创建一个段....
段本身是有一个或多个盘区(extent)组成。
extent是在文件中一个连续的分配空间,每个段至少开始于一个盘区,盘区中的空间总是连续的,盘区的容量范围是从一个块(block) 到2GB.
block是在Oracle中空间分配的最小单元,块是存储数据行、索引项、临时排序结果的地方。块是Oracle读写磁盘的对象。Oracle中的块通常有3个常见的大小---2KB、4KB、8KB。
重做日志文件----事务日志
至关重要的。仅在恢复时才使用。它们的唯一作用是在实例或介质失败时使用,或作为维护数据库故障恢复的后备数据库的方法。
联机重做日志,在大小是固定的,并以循环的方式使用。
归档重做日志。 如果不用归档模式的话,系统不会是一个实用系统,必将丢失数据,
控制文件---- -告诉我们 这些数据文件在什么地方,以及其他关于其状态的信息
临时文件-----用于磁盘上的分类和临时的存储
当内存不足以在RAM中保存一个大规模排序操作的中间结果或结果集时,Oracle使用临时文件来存储它们。永久对象,如表或一个索引,是不会存储到临时文件中的。
一般来说,对一个对象作出的每一个更改都将记录在重做日志中去,但是临时文件从不生产重做。 临时文件 生成 撤销日志UNDO。推荐使用本地管理临时表空间 来配置数据库:
create temporary tablespace temp
tempfile '****‘
size 5m
extent management local
uniform size 64k;
密码文件---- 用于对在网络上执行管理活动的用户进行身份验证。
SID 是一个站定标识符,它和ORACLE_HOME一起创建连接SGA的唯一码名,如果SID 或者HOME 没有正确设置,将得到Oracle not available的错误。
SQL_TRACE、TIMED_STATISTICS 、TKPROF
Oracle的存储结构分为物理结构和逻辑结构。
数据库的物理结构
逻辑结构:
关系: