在学习oracle中,体系结构是重中之重,一开始从宏观上掌握它的物理组成、文件组成和各种文件组成。掌握的越深入越好。在实际工作遇到疑难问题,其实都可以归结到体系结构中来解释。体系结构是对一个系统的框架描述。是设计一个系统的宏观工作。这好比建一栋大楼。你首先应该以图纸的方式把整个大楼的体系架构描述出来。然后一点点的往里面填充东西。下面我们先以一个图解的方式对oracle体系结构有一个基本了解
根据示图,便于我们记忆,示图分三部分组成,左侧User Process、Server Process、PGA可以看做成Clinet端,上面的实例(Instance)和下面的数据库(Database)及参数文件(parameter file)、密码文件(password file)和归档日志文件(archived logfiles)组成Oracle Server,所以整个示图可以理解成一个C/S架构。 Oracle Server由两个实体组成:实例(instance)与数据库(database)。这两个实体是独立的,不过连接在一起。在数据库创建过程中,实例首先被创建,然后才创建数据库。在典型的单实例环境中,实例与数据库的关系是一对一的,一个实例连接一个数据库,实例与数据库也可以是多对一的关系,即不同计算机上的多个实例打开共享磁盘系统上的一个公用数据库。这种多对一关系被称为实际应用群集(Real Application Clusters,RAC)RAC极大提高了数据库的性能、容错与可伸缩性(可能耗费更多的存储空间)并且是oracle网格(grid)概念的必备部分。
下面我们来详细看一下oracle数据库的体系架构
Oracle体系架构主要有两大部分组成:数据库实例(Instance)和数据库文件(database)
数据库实例
指数据库服务器的内存及相关处理程序,它是Oracle的心脏。与Oracle性能关系最大的是SGA(System Global Area,即系统全局区活共享内存区),SGA包含三个部分:
1、数据缓冲区,可避免重复读取常用的数据;
2、日志缓冲区,提升了数据增删改的速度,减少磁盘的读写而加快速度;
3、共享池,使相同的SQL语句不再编译,提升了SQL的执行速度。
oracle