Oracle学习笔记一:体系结构

来源:互联网 发布:科比职业生涯数据统计 编辑:程序博客网 时间:2024/05/16 11:15

1.实例:用来访问数据库文件集的存储结构(统称SGA--System Global Area)及后台进程的集合。任意一个实例都对应一个初始化文件init.ora,文件通常包含该实例的名字(如实例名为wootion的初始化文件initwootion.ora),它决定实例的大小及组成的参数。
  ①SGA(系统全局区):系统在内存中规划的一个固定区域,用来存储每位使用者所需存取的数据及系统信息。包含若干重要区域:        
    数据块缓存区:存放读取自数据文件的数据块复本或使用者曾经操作过的数据,有效减少存取数据时造成的磁盘读写动作。数据块缓存区大小通常只有数据库大小的1%~2%,Oracle使用LRU(最近最少使用算法)来管理可用空间。
    字典缓存区:数据库对象的信息存储在数据字典中,如用户账号、数据文件名、盘区位置、表说明和权限等。
    重做日志缓冲区:联机重做日志文件记录数据库的更改,以便在数据库回复过程中向前滚动,这些修改事物首先被记录在重做日志缓存区中,周期性地分批写入。
    SQL共享池:存储数据字典缓存区及库缓存区,即对数据库进行操作的语句信息。
  ②后台进程:维持数据库的物理结构和存储结构之间的关系
    DBWR(数据库写入程序):将数据块缓存区内变动过的数据块写回至硬盘内的数据文件
    LGWR(日志写入文件):将重做日志缓存区内的数据变动记录顺序写入重做日志文件
    SMON(系统监控程序):进行因停电或其他因素导致的非正常关闭而必要的数据库修复
    PMON(进程监控程序):清除数据块缓存区内不再使用的空间,并释放系统资源
    CKPT(检查点进程):在适当时候产生checkpoint事件
    RECO(回复进程):自动处理分布式操作失败产生的问题
    ARCH(归档进程):以ARCHIVELOG模式运行时,数据库在开始重写重做日志文件前对其进行备份,写入磁盘/磁带设备
2.数据库:数据容器,通常指一系列的文件系统。
  ①内部结构:从数据库内部了解其组成要素
    表空间:数据库的逻辑划分,每个数据库至少有一个表空间(SYSTEM表空间),每个表空间由一个或多个数据文件组成。为管理和提高运行效率,使用一些附加表空间来划分 用户和应用程序。一个表空间只属于一个数据库。
    表:存放用户数据的对象
    约束条件:Primary Key、DEFAULT、CHECK、UNIQUE、FOREIGN KEY
    分区:大表数据分成多个小表来简化管理和改善应用性能
    索引:提高性能,保证列值唯一性
    簇(Cluster):将经常被访问的表在物理位置上存储在一起.散列簇--提高等值查询效率
    用户:用户SYS拥有数据字典表,这些表中存储了数据库其他对象的所有信息;SYSTEM用户拥有访问数据字典表的视图,这些视图供其他用户使用。将操作系统账号和数据库账号关联。
    方案(Schema):用户拥有的对象集
    同义词:给不同用户使用数据库对象提供简单、唯一标识数据库对象的名称。公用和私有
    权限与角色:创建角色即权限组来简化权限的管理
    段(SEGMENT)、盘区(EXTENT)、数据块:数据块是最小的存储单元,是操作系统块大小的整数倍
 ②外部结构:从操作系统观点看,数据库是操作系统的各种文件,最重要文件包括:数据文件、重做日志文件、控制文件等

    语法方式查看:select * from v$controlefile/v$datafile/v$logfile

原创粉丝点击