oracle 体系结构
1.oracle的体系结构
oracle服务器是由实例(instance)和数据(database)两大部分组成。
实例:由一系列后台进程和内存结构组成,启动oracle时必须先创建实例,再通过实例来访问数据库。一个运行中的oracle数据库至少对应一个实例。
在oracle中数据库主要指用于保存数据的一系列物理结构和逻辑结构,用户连接数据库实际上就是与oracle实例连接,再由oracle实例负责与数据库通信。
实例的内存包括SGA(系统全局区)与PGA(程序全局区)两大部分
当用户连接oracle实例时,将创建一个用户进程来执行相应任务
实例启动时创建的,用于执行特定服务功能的进程称为oracle进程,其中又分为服务进程和后台进程
oracle实例启动的时候将在操作系统内存中创建一个内存机构并分配内存空间,这部分内存将用来保存oracle实例运行时处理的数据(数据缓存,对sql语句pl/sql程序的解析代码、与用户的会话以及其他需要共享的信息)
SGA是oracle的共享内存,在SGA中保存的数据可以被所有的服务进程和后台进程共享
PGA是非共享内存,每个服务进程都拥有自己的内存空间,保存进程私有的数据和控制信息