Oracle数据库从入门到精通系列之二:SGA和后台进程
创始人
2025-05-31 16:58:47

Oracle数据库从入门到精通系列之二:SGA和后台进程

  • 一、SGA
  • 二、后台进程

一、SGA

Oracle有一个很大的内存块,称为系统全局区(SGA),用于(但不限于):

  • 维护所有进程需要访问的内部数据结构
  • 缓存磁盘上的数据,另外重做数据写至磁盘之前先在这里缓存。
  • 保存已解析的SQL计划等。

二、后台进程

Oracle有一组"附加到"SGA的进程,附加机制因操作系统而异。在UNIX/Linux环境中,这些进程会附到一个很大的共享内存段,这是操作系统中分配的一个内存块,可以由多个进程并发地访问(通常要使用shmget()和shmat())。

在Windows中,这些进程使用C调用(malloc())来分配内存,因为它们实际上是一个大进程中的线程,所以会共享相同的虚拟内存空间。

Oracle还有一组供数据库进程/线程读写的文件(只允许Oracle进程读写这些文件)。

  • 在单租户架构下,这些数据文件存放着所有的表数据、索引、临时空间、重做日志及PL/SQL代码等。
  • 在多租户架构下,容器数据库(CDB)存放着所有Oracle本身相关的元数据、数据及代码。实际的应用数据放在可插拔式数据库(PDB)中。

在UNIX/Linux系统上启动Oracle,并执行PS命令,就会看到许多进程,还会显示出这些进程的名字。统称为Oracle后台进程。

  • 后台进程是构成实例的持久性进程,从启动实例开始,这些进程会一直运行,直至实例关闭。
  • UNIX/Linux上只有一个Oracle二进制可执行文件,就是oracle。

相关内容

热门资讯

长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...