Oracle 用户进程和服务器进程


  主要介绍一下用户进程、服务器进程 及PGA
   
   1.用户进程(或称客户进程)
    是指用户到Oracle数据库服务器的链接,用户进程处理用户输入并通过Oracle程序接口与Oracle服务器进程通信。用户进程还负责显示用户请求的信息,必要时可以将信息处理成更有用的形式。
   2. 服务器进程
    除了Oracle的后台进程外,还有一些进程是代表用户的,称为服务器进程。这些服务器进程负责按照用户的要求检索数据,并将结果返回给用户。此外,还负责为用户修改缓冲区高数缓存中的数据。
    当用户连接到Oracle数据库服务器时,会创建一个代表用户的服务器进程,有时也称为影子进程(shadow process).服务器进程与用户通信,并通过与Oracle交互来完成用户请求。
       例如:用户请求了一段不在SGA中的数据,服务器进程负责把数据块从数据文件中读入SGA。用户进程与服务器进程可以是一对一的关系(配置为专用服务器模式时)。一个服务器也可连接多个用户进程(配置为多线程服务器时),但这样做会减少对系统资源的利用。
  3.PGA(程序全局区)
     PGA内存是一片包含Oracle服务器进程的数据和控制信息的内存区域。PGA的数量和内容依赖于安装的Oracle服务器的选项。
     PGA 组成部分:
     a.  栈空间   存储会话的变量、数组等的内存空间
     b.  会话信息 如果运行的不是多线程服务器(配置为专用服务器模式),会话信息保存在PGA中,如果是多线程服务器,则保存在SGA中。
     c.私有SQL区  这是PGA中的一部分,用来保存绑定变量(binding variables)和运行时缓冲区(runtime buffers)等信息

出自serapy的博客转载务必保留:http://blog.sina.com.cn/s/blog_8c6d7ff60100vdkj.html

你可能感兴趣的:(Oracle&Mysql)