Oracle进程结构包括用户进程,服务进程,后台进程。

1. 用户进程

用户进程在数据库用户要求连接到Oracle服务器时开始启动。
用户进程是要求Oracle服务器交互的一种进程
它必须首先建立一个连接
不直接和Oracle服务器交互

2. 服务进程
服务进程连接Oracle实例,当用户建立一个会话时开始启动。
服务进程是直接和Oracle服务器交互的一段程序
他响应用户要求,向服务器发起呼叫并返回结果给用户。
可用专用服务器模式,也可用共享服务器模式创建会话。

3. 后台进程
后台进程在Oracle实例启动时可用。
必须的后台进程有:DBWn,LGWR,PMON,SMON,CKPT等
可选的后台进程有:ARCn,LMON,Snnn,QMNn,LMDn,CJQ0,Pnnn,Dnnn,LCKn等

3.1 DBWn
数据库写进程,负责将内存中变更的数据写入到磁盘。
DBWn写的条件:
检查点执行 脏块上限数到达 缓冲区没有自由空间 超时
连接RAC要求 表空间脱机 表空间只读 清理和删除表 表空间开始备份
内存中的数据块是零散的,DBWR执行批量写出有利于性能提升。

3.2 LGWR
日志写进程LGWR管理SGA中的Redo Log Buffer,将其中的内容批量写出到在线重做日志中。LGWR进程通过日志写操作,延迟DBWn的写操作,从而实现协同与性能促进。
LGWR开始写的条件:
提交时 三分之一缓冲区满 当有1MB日志 每三秒 DBWn写之前

3.3 PMON
Oracle实例第一个启动的进程。用于监控其他用户进程,当出现用户进程失败时,执行进程恢复工作。还负责向TNS监听器注册实例。

3.4 CKPT
负责更新控制文件和数据文件头的检查点信息,还会通知DBWn进程去执行写操作。

3.5 ARCn
归档进程,当archivelog模式被设置时自动归档联机重做日志文件,保存所有数据库变化,是可选的后台进程。

Oracle数据库体系结构之进程结构(4)的更多相关文章

  1. Oracle数据库体系结构及创建表结构

    Oracle服务器主要由实例.数据库.程序全局区和前台进程组成,其中实例就是用来提供管理数据库的功能:数据库由数据库文件组成,用来存储系统数据:实例可以进一步划分为系统全局区(SGA)和后台进程(PM ...

  2. Oracle数据库体系结构、启动过程、关闭过程

    一.Oracle数据库体系结构体系结构由下面组件组成:1.Oracle服务器(Server):由数据库实例和数据库文件组成,另外在用户建立与服务器的连接时启动服务器进程并分配PGA(程序全局区) (1 ...

  3. Oracle学习笔记--第2章 oracle 数据库体系结构

    第2章 oracle 数据库体系结构 目录: ————————————— 2.1物理存储结构 2.1.1数据文件 2.2.2控制文件 2.1.3重做日志文件 2.1.4其他文件 2.2逻辑存储结构 2 ...

  4. Oracle数据库体系结构(2)数据库实例

    Oracle实例的概念: 实例(Instance):就是数据库管理系统,处于用户与物理数据库之间的一个中间层软件,由一系列内存结构和后台进程组成. 用户操作数据库的过程实质上与数据库实例建立连接,然后 ...

  5. oracle数据库体系结构

    一.oracle数据库体系结构 基本组成: Oracle server:一般情况下是一个instance和一个database组成 一般:1个instance只能对应一个数据库. 特殊:1个数据库可以 ...

  6. Oracle数据库——体系结构

    一.涉及内容 1.了解数据库的物理存储结构和逻辑存储结构 二.具体操作 1.分别使用SQL 命令和OEM 图形化工具查看本地数据库的物理文件,并使用OEM 工具在现有的users 表空间中添加user ...

  7. Oracle数据库之创建表结构

    Oracle数据库之创建表结构 主键与外键 主键:关系型数据库中的一条记录中有若干个属性,若其中的某一个属性组(可以是一个属性,也可以是多个)能唯一标识一条记录,那么该属性组就是主键. 外键:关系型数 ...

  8. Oracle数据库体系结构(1)整体概述

    oracle数据库的存储结构: 逻辑存储结构:oracle内部的组织和管理数据的方式 物理存储结构:oracle外部(操作系统)组织和管理数据的方式 oracle对逻辑存储结构和物理存储结构的管理是分 ...

  9. oracle 数据库下所有表结构、数据量及缺失值统计

    表结构 SELECT t1.TABLE_NAME, t1.COLUMN_NAME, t1.DATA_TYPE || '(' || t1.DATA_LENGTH || ')', t2.COMMENTS ...

随机推荐

  1. 小计:Shopee批量删除修复~附脚本

    需求 昨天浪的时候,无意之间看到文职人员在一个个删除违禁商品,大概23个店铺,每个店铺500多个商品,页面是用Ajax异步加载的,每删一个就需要等几秒,粗略估计一下用时:9h左右 然后了解了下是什么情 ...

  2. 【洛谷P3649】回文串

    题目大意:给定一个长度为 N 的字符串,定义一个变量为该字符串的回文子串长度乘以该字串出现的次数,求这个变量的最大值是多少. 题解:学会了回文自动机. 回文自动机是两棵树组成的森林结构,并通过 fai ...

  3. Python基础和原反补码及表达式

    基础语法 1.注释 “#”标注的文件 2.数字 整数,不区分long和int 进制0xa.0o10.0b10 bool,2个值True.False 浮点数 1.2.3.1314.-0.12.1.46e ...

  4. Spring Cloud中关于Feign的常见问题总结

    一.FeignClient接口,不能使用@GettingMapping 之类的组合注解 代码示例: @FeignClient("microservice-provider-user" ...

  5. 13、Ajax的使用

    一.AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. a).AJAX = 异步 JavaScript 和 XML. b).AJAX 是一种用于创建快速动态网页的技术. 通过在后 ...

  6. request.getParameterValues 出现 [Ljava.lang.String;@ 错误

    在实现简单的本地登录系统时,需要把page1.jsp的表单显示在page2.jsp中. 其中获取page1.jsp表单的办法就是在页面1的<form>中加入action="pag ...

  7. Centos6.5使用yum安装mysql——快速上手必备(转载)

    第1步.yum安装mysql[root@stonex ~]#  yum -y install mysql-server安装结果:Installed:    mysql-server.x86_64 0: ...

  8. String构造函数

    只简单写了几个函数 class String { public: String(const char* pStr = NULL); String(const String& str); vir ...

  9. 开启Apache的server status监测

    从httpd.conf 打开 status_module#LoadModule status_module modules/mod_status.so修改成LoadModule status_modu ...

  10. C#创建 WebApi 项目

    做web api 可以参考一下网友 C#进阶系列——WebApi 接口参数不再困惑:传参详解 - 懒得安分 - 博客园https://www.cnblogs.com/landeanfen/p/5337 ...