把Oracle内存结构说透

引言


Oracle Server由两个实体组成:实例(instance)与数据库(database)。


实例(instance)包括:内存结构(SGA、PGA)和用户进程,实例为用户同数据库交互的媒介。


数据库(database)包括:物理结构(数据文件、日志文件、控制文件等)和逻辑结构(表空间、段、区、块、等)


Oracle内存结构与oracle性能息息相关,内存结构是CPU与IO桥梁,内存结构对于数据库来说非常重要。


一、内存结构概述


内存结构主要有:系统全局区(System Global Area简称SGA)和(Process Global Area简称PGA)组成。


系统全局区SGA:当启动实例的时候分配,是一组包含一个Oracle实例的数据和控制信息的共享内存结构。


进程全局区PGA:当Server进程建立时分配,此区域包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA 正相反。PGA 是只被一个进程使用的私有区域。PGA 在创建进程时分配,在终止进程时回收。


二、系统全局区SGA


1.SGA由几个内存结构组成


数据高速缓冲区(Database Buffer Cache)


共享池(Shared Pool)


重做日志缓冲区(Redo Log Cache)


其他结构(如锁管理)


联动北方其他参考链接如下:http://bbs.landingbj.com

-The End-


你可能感兴趣的:(oracle,database)