OCP第三章:数据库后台进程

SMON系统监控进程

  作用:实例的恢复 --> 1、前滚所有重做日志中的改变

2、打开数据库为了用户能够访问

3、回滚没有提交的事物

  --> 实例恢复不需要DBA操作,由oracle自动完成

  --> 在执行startup force命令后,会进行实例恢复操作

  --> 相关命令:

      alter database archivelog;

      shutdown mount

      shutdown immediate

      startup mount

      --> 遇到报错:ERROR at line 1: ORA-00265: instance recovery required , cannot set ARCHIVELOG mode

        解决:先将数据库关闭,再启动

  暗合自由的空间(不重要)

  释放临时表空间(不重要)

  PMON进程监控进程

作用:清除失败的进程 -->  1、回滚事务,即:roolback

2、释放锁,自动释放

3、释放其他资源

4、重启死掉的服务

5、动态注册监听器

--> 操作中误操作kill掉PMON进程后,暂时在进程列表中还会看到该进程,但是当操作过程中触发PMON时,

数据库就会找不到PMON进程,便会报错,导致整个实例都被关闭

DBWR数据库写进程

作用:用户修改数据并且提交之后,被修改的数据保存在database buffer cache中,通过该进程将更新的数据写入物理磁盘的数据文件中

什么时候会触发DBWR进程:     1、CKPT进程触发之后,先触发LGWR进程,然后再触发DBWR进程

2、数据库缓冲区中的脏缓存到达参数限制时

3、没有自由的缓存

4、超时发生

5、RAC ping请求

6、表空间离线

7、表空间只读

8、表被删除或者截断

9、开始备份表空间DBWR的个数:根据参数文件设定

    32位系统,默认的DBWR个数是10个(命名:DBW0 -- DBW9),最多可以跑10个进程

    64位系统,默认的DBWR个数是10个(命名:DBWa -- DBWi),最多可以跑20个进程

查看后台进程语句:

    select name from v$bgprocess where paddr <> ‘00‘;

查看当前设定DBWR进程的个数语句:

    show parameter db_w

修改DBWR进程的个数语句:

    alter system set db_writer_processes=2 scope=spfile;

    startup force;-->恢复实例

流程:database buffer cache --> dbwr --> database files

LGWR日志写进程

作用:将保存在redo log buffer中的日志信息,通过该进程写入物理磁盘的日志文件中

什么时候会触发LGWR进程:     1、commit提交的时候

2、redo log buffer空间达到三分之一满的时候

3、日志文件的大小为1M的时候

4、每隔三秒钟的时候

5、在DBWR进程写之前的时候

日志写操作必须在数据写之前:因为日志的作用是为了数据库的恢复,如果先执行数据写操作,此时服务器出现异常了,

              在根据日志做数据恢复时,由于刚才的操作没有记录到日志中,所以不能恢复服务器出现异常之前的数据写的操作,

              因此日志写操作必须在数据写操作之前。

LGWR的个数:默认为1个

优化方面:由于日志写操作在数据写操作之前,所以在IO性能方面一定要快,假设数据写的IO性能很快,而日志写操作的性能不快,

       也会导致整体性能很低

查看日志缓冲区空间语句:show parameter log_buff

     流程: log_buff --> lgwr --> log files

CKPT检查点进程

    概念:在oracle中用来保证日志文件、数据文件和控制文件之间实现同步的后台进程,该进程必须要正常

    作用:1、给DBWR提供触发信号

         2、更新所有数据文件的型号

         3、更新所有控制文件的信息

其他后台进程

    1、归档进程(ARCH/ARCn):如果oracle的数据文件丢失或损坏,数据库就要进行完全恢复,

                   此时数据库就应该运行在归档模式下,只有在归档模式下才会启动归档进程。

    2、日志切换:在oracle中,重做日志文件被划分为若干个组。当一组重做日志文件写满后,oracle就开始写下一组重做日志,这就成为日志切换。

    3、归档日志:日志切换是以循环的方式进行的,就是当最后一组日志文件被写满后,又开始写第一组日志文件。因此如果只有重做日志文件(即数据库运行                               在非归档方式下),当遇到数据文件丢失或损坏时,oracle系统就很难保证完全恢复数据库中的数据,因为此时所需要的重做记录因重做日志循环而被覆盖掉了。在归档方式下,ARCn进程将会把切换后的重做日志文件内容复制到归档日志文件中,可以把归档日志文件看成是重做日志文件的备份,但归档日志文件是脱机的,除了在进行复制时,oracle数据库在正常运行时时不会关注归档日志文件的,oracle系统确保在一组重做日志的归档操作完成之前不会重新使用该组重做日志。在oracle数据库中归档操作一般是自动执行的。利用这些归档日志文件,oracle系统就能确保在遇到数据文件丢失或损坏后可以完全恢复数据库中的数据。

4、查看数据库是否为归档模式语句:

    select log_mode from v$database;

      -->非归档模式:NOARCHIVELOG

5、切换成归档模式步骤:

    (1)关闭数据库     shutdown immediate

    (2)将数据库启动到mount状态     startup mount

    (3)设置数据库模式为归档     alter database archivelog;

    (4)打开数据库     alter database open;

    (5)查看数据库是否为归档模式     select log_mode from v$database;

6、归档进程的个数语句:

    show parameter log_archiv

7、修改归档进程个数语句:最多只能设置30个

    alter system set log_archive_max_processes=2;

8、将日志归档语句(即:将重做日志内容复制到归档日志文件中,每执行一次,就会新增一个归档日志文件)

    alter system switch logfile;

9、查看归档日志文件所在路径语句:

    show parameter db_rec;

10、其他后台进程:

    Pnnn:并行进程,用于并行查询或者并行DML操作

    Dnnn:调度器进程,用于共享模式连接的用户需求调度

    Snnn:共享服务进程,用于共享模式连接的用户需求操作

    MMAN:内存管理进程,用于10g的内存自动管理

    MMON:内存监视进程,用于10g的性能优化中的统计信息自动收集

    RECO:分布式恢复进程,用于完成用户自定的自动执行任务

    Jnnn:任务执行进程,用于完成用户定制的自动执行任务

    CJQO:任务调度进程,用于在用户规定的时间唤醒任务进程

时间: 2025-01-15 22:08:07

OCP第三章:数据库后台进程的相关文章

第三章 数据库备份和还原

一.数据库恢复模式 1.完整:能够让数据库恢复到出现故障的时间点和指定时间点(主要是日志文件完 整备份) 2.大容量日志:数据库日志不记录对数据修改的时间(即指定的时间点)效率高只 能通过日志恢复到故障点 3.简单:对事务日志不活跃的逻辑日志文件覆盖重复利用(日志写满后覆盖完成的 提交的事务日志)不能利用日志还原数据库,只能利用完整数据库文件恢 复 1)简单恢复模式 数据库备份和还原策略 数据小 数据变化不大 数据库不能恢复到出现故障的时间点(重复擦写日志文件) 完整数据库备份  完整的数据库备

数据库系统原理(第三章数据库设计 )

一.数据库设计概述 数据库的生命周期  数据库设计的目标: 满足应用功能需求(存.取.删.改), 良好的数 据库性能(数据的高效率存取和空间的节省 共享性.完整性.一致性.安全保密性) 数据库设计的内容  数据库设计的方法 直观设计法( 最原始的数据库设计方法) 规范设计法:(新奥尔良设计方法:需求分析.概念结构设计.逻辑结构设计.物理结构设计 : 基于E-R模型的数据库设计方法 :基于第三范式的设计方法,是一类结构化设计方法) 计算机辅助设计法( 辅助软件工程工具) 数据库设计的过程 二.数据

数据库期末考试复习题 第三章

作者 : Dolphin 原文地址:http://blog.csdn.net/qingdujun/article/details/27826439 一.填空题 1. SQL语言的数据定义功能包括①模式定义.②表定义.③视图和④索引的定义. 2. 视图是一个虚表,它是从①基本表或其他视图表中导出的表.在数据库中,只存放视图的②定义,不存放视图的③数据. 二.简答/综合 1. 简述在 SQL中使用视图的优点. 答:1)简化操作 2)从多角度看同一数据 3)视图给数据提供了一定逻辑独立性 4)视图给数

使用Micrisoft.net设计方案 第三章Web表示模式

第三章Web表示模式 体系结构设计者在设计第一个作品时比较精简和干练.在第一次设计时,并清除自己做什么,因此比较小心谨慎.第二个作品是最危险的一个作品,此时他会对第一个作品做修饰和润色,以及把第一次设计的边缘性设计思想都用在第二个作品,结果导致设计过头. 最初的Web很简单,只是有几个简单的Html页面组成,实现信息共享.随着业务的发展,需要根据业务来决定显示什么,于是开发了CGI编程,把大量的业务逻辑写到CGI中,然后输出到页面.随着发展,CGI编程模式受到了挑战,不能满足发展的需求,于是开发

MySQL Cookbook读书笔记第三章

1,查询指定列/从指定列中查询 若需要指定每一列在查询结果中出现的先后顺序,可以在select语句中指定(dstuser在dsthost之后): 查询显示用户所关注的列: 2,指定查询行 使用where关键字可以查询符合条件限制的数据例如:查找srchost为venus或者srchost以s开头的行记录: 使用操作符like进行模式匹配,其中%表示通配符,代表一个差多为任意值的字符串. where使用操作符and可以查询多个条件: 条件并集: 3,格式化显示查询结果 当查询语句中没有重命名列名,

2017上半年软考 第三章 重要知识点

第三章 讲了信息系统集成所需要的技术: 重点是:信息系统生命周期:立项[形成需求规格说明书].开发.运维.消亡: 信息系统建设包括:设备采购.系统集成.软件开发.运维服务: 软件开发常用方法:结构化方法[整个系统分若干阶段依次进行.每个阶段都有详细的文档编制要求:注重全局和整体性: 缺点开发周期长,文档设计繁琐,设计说明繁琐,工作效率低,要在开发之初认识系统需求].原型法[快速开发一个原型.反复修改来实现用户需求: 分抛弃型原型.进化型原型].面向对象法[关键:能否建立全面.合理.同意,反映需求

使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置

原文:使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置 摘要 讲解在IntelliJ IDEA中,如何进行Mysql数据库的配置 目录[-] 文章已针对IDEA 15做了一定的更新,部分更新较为重要,请重新阅读文章并下载最新源码. 六.数据库配置 1.创建Mysql数据库 2.IntelliJ IDEA导入数据库 3.配置数据库 更新: 转载请注明出处:Gaussic(一个致力于AI研究却不得不兼顾项目的研究生). 注:在阅读本文前,请先阅读: 使用IntelliJ ID

《HTTP权威指南》读书笔记(第一章~第三章)

第一章 HTTP概述 超文本传输协议 HTTP(HyperText Transfer Protocol) Web服务器使用HTTP协议,通常也称HTTP服务器.Web服务器是Web资源(Web resource)的宿主.最简单的Web资源就是Web服务器文件系统中的静态文件.这些文件可包括任意内容:文本.HTML.图片.视频等等.Web服务器会为所有HTTP对象数据附加一个MIME类型的数据格式标签.(Multipurpose Internet Mail Extension 多用途因特网邮件扩展

【Oracle】第三章索引视图序列

第三章索引视图序列 序列是用来生成唯一,连续的整数的数据库对象.序列是用来自动生成主键或唯一键的值. CREATE SEQUENCE  sequence_name START WITH  integer INCREMENT BY  integer MAXVALUE   integer|nomaxvalue MINVALUE    integer|nominvalue CYCLE|NOCYCLE CACHE  integer|nocache; START WITH     指要生成的第一个序列号,