Oracle体系结构
Oracle Server由例程(Instance)和数据库(Database)两部分组成。
数据库是一组OS文件的集合,它由数据文件、控制文件和重做日志组成。
例程是由一组内存结构和后台进程的集合;
内存结构主要包括数据高速缓存、重做日志缓冲区和共享池3部分,这些内存结构总称SGA(System Global Area);后台进程主要包括:SMON、PMON、DBWR、CKPT、LGWR、ARCH等。
2 SGA
2.1共享池(shared pool)用于存放最近执行的SQl语句和数据字典信息。共享池主要由库高速缓存(Library Cache)和数据字典高速缓存(Dictionary Cache)两部分组成。
2.1.1库高速缓存:用于存放最近执行的SQL语句信息,包括SQL语句文本、解析代码值及其执行计划。
2.1.2 数据字典高速缓存:用于存放数据字典的信息,包括表、列的定义以及权限信息。
2.2数据高速缓存(DatabaseBuffer Cache)用于存放最近访问的数据块信息,它由许多小缓冲区(缓存区尺寸=数据块尺寸)组成。无论是读数据还是修改数据,都是在数据高速缓存中完成的。
2.2.1数据高速缓存工作原理:采用LRU算法(LeastRecently Used)最少使用算法,最少使用最先出,最先入队最先出队,最后入队最后出队。
2.3 重做日志缓冲区(Redo LogBuffer)用于记载例程变化。执行DDL或DML语句时,服务器进程首先将事务变化记载到重做日志缓冲区,然后
还没有评论,来说两句吧...