存储结构:物理结构:数据文件、控制文件、联机重做日志文件的用法,以及参数文件密码文件等
逻辑结构:表空间、段、区、数据块的结构
实例:SGA和后台进程:SGA的组成和运行过程,后台进程的作用
PGA
存储结构:
存储方式:①ASM存储②操作系统下的文件存储方式③裸设备存储④群集文件系统存储
ASM存储结构:能够自动平衡I/O,需要OMF管理
ASM磁盘通过ASM实例来管理其中的数据和文件,数据库实例能够直接对ASM磁盘进行I/O操作
逻辑和物理结构的关系:
物理文件包括数据文件,控制文件,联机重做日志文件和密码文件,参数文件等
1. 数据文件:1个数据文件只能属于一个表空间
1个data file可以含有多个segment,1个segment可以跨越多个data file
数据文件创建时,其分配的磁盘空间被格式化为Oracle格式,不含任何数据,为segment作准备。Segment以extent的形式进行扩展
数据文件的类型:永久的
临时的(temp总是被设置成nologging模式)
2种操作:online和offline
2. 控制文件:二进制,供DB启动和正常工作使用,只能由oracle修改
包含的信息:DBID
数据库创建时的时间戳
数据文件,联机重做日志文件,归档日志的信息
表空间信息
RMAN备份集的信息
检查点信息
多路复用控制文件
通过PGA对控制文件进行读写
3. 联机重做日志文件:防止数据丢失,是redolog buffer的完全副本
1个数据库至少需要2组日志文件以上
每个实例(单实例或RAC)都有各自的一个redo thread(重做日志文件系统)
日志切换(log switch)
① 每组日志文件的序列号递增,新的序列号
② Noarchived和archived模式下的日志切换,归档后才能再写
多路复用redolog file
Archived log file是offline的,是联机重做日志文件的副本
日志包含的信息:SCN和改变时的时间戳
已提交事务的SCN和时间戳
改变的操作类型
修改的segment的名字和类型
日志文件的最小单位是改变向量(change vectors),用来描述单个数据块的一次改动,内容包括被改动的数据块的版本号,事务操作代码,数据块地址等
--------------------------------------------------------------------------------------------------------------------
逻辑空间的管理:本地管理
字典管理
本地管理通过bitmap方式进行管理,不会产生回滚段。可以进行ASSM,MSSM管理
字典管理通过在SYSTEM下创建数据字典表的方式对表空间进行管理
Dmt和lmt是管理segment中的extent
ASSM和MSSM是管理extent中的block的
MSSM通过segment header中的freelist列表来管理extent上处于HWM下的那些没有达到pctfree和pctfree后再下降到pctused的block(可插入的数据块)
HWM是用来区分used和not yet used的标记
1. 数据块:最小单位,对应操作系统块 2K~32K
Block size与SYSTEM,SYSAUX关系,以及Tablespace block size
结构:
管理开销包含的信息:数据块头,包含标准内容和可变内容(如块地址,所属段的类型)
表目录
行目录(数据行包括片段piece在row data中的地址等)
Free space是为数据块的数据update操作而预留的空间
数据块中的数据行格式:
行的管理开销包括:
列的数量
行链接时其它块中的row piece的
ROWID
Cluster key ID等
一个数据行data row可以跨越多个数据块
行链接:插入操作时过大
行迁移:更新操作时过大,新的数据块该行的rowid不变
行链接和行迁移发生时数据库的I/O性能会降低
Pctfree和pctused参数的用法
当数据块可用时放入freelist列表
delete和update操作可增加数据库的可用空间
区extent 由连续的block组成
区和段的关系
段 Segment 表段,索引段等等
Temp segment
Undo segment
表空间
几种表空间:
SYSTEM:必须联机
可创建本地管理或字典管理(默认)的SYSTEM表空间
本地管理可转换为字典管理,但字典管理不能转换为本地管理
包含的信息:数据字典
含有管理员信息的表和视图
已编译的对象(触发器、过程、包)
SYSAUX:SYSTEM的辅助表空间,不能drop或rename
UNDO表空间:撤销表空间,必须本地管理
Temporary 表空间: 用于排序操作
如果SYSTEM为本地管理的,必须创建默认的temporary
如果SYSTEM为字典管理的,则可用SYSTEM作为默认的临时表空间(同时alert.log中会生成建议报告)
表空间的的状态:read/write: SYSTEM,STSAUX,temporary必须处于此状态
read-only: 其余
online:SYSTEM,temporary必须处于此状态
offline:其余
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24005010/viewspace-687188/ ,如需转载,请注明出处,否则将追究法律责任。