在Oracle中有很多的东西值得我们大家学习的地方,在这里我们主要描述的是Oracle SMON进程,也包括介绍归档进程ARCH等相关方面的内容。在Oracle数据库中有两个进程非常的渺小,但是其作用却是非常的巨大。由于其比较小而往往被数据库管理员所忽视。

笔者这次就给大家提醒提醒,不要忽视了这两个进程的作用。如果利用的好的话,会减少系统管理员不少的工作。

Oracle SMON进程中系统监视进程SMON

这个进程对于Oracle数据库来说,可以利用一句话来概括,即人小鬼大。其负责的内容并不是很多,但是对于数据的安全与数据库的性能却有很关键的作用。如随着表空间中的数据不断的建立、删除、更新等等,在表空间中难免会产生碎片。由于这些碎片的存在,数据库的性能会逐渐的降低。而现在系统监视进程SMON的作用,就可以解决这些碎片。

Oracle SMON进程会将各个表空间的空闲碎片合并在一起,让数据库系统更加容易分配。从而提高数据库的性能。另外,在数据库运行的过程中,会因为断电或者其他的原因而发生故障。此时由于数据高速缓存中的脏缓存块还没有来得及写入到数据文件中,从而导致数据的丢失。

在数据库启动的时候,系统监视进程OracleSMON会在下一次启动例程的时候,自动读取重做日志文件并对数据库进行恢复。也就是说,进行将已提交的事物写入数据文件(已经写入到日志文件中而没有写入到数据文件中的数据)、回退未提交的事务操作。可见,Oracle SMON进程是一个比较小但是却非常重要的角色。

在管理这个进程的时候,笔者认为主要需要注意两个问题。一是其启动的时机。一般情况下,例程重新启动的时候,会启动这个系统监视进程。然后在这个例程运行期间,这个进程也会被系统定期的唤醒,然后其会检查是否有工作需要其完成。最重要的是,在有需要的时候,数据库管理员可以通过其他进程来启动这个OracleSMON系统系统监视进程,来完成一些特定的工作。

第二需要注意表空间配置对这个进程的影响。在表空间管理中,有一个参数叫做PCTINCREASE。如果将这个参数设置为0的话,则这个SMON系统监视进程对于这个表空间的作用就要打折扣了。在设置为0的情况下,SMON进程就不会对这个表空间中的空闲碎片进行整理、合并操作。

也就是说,需要数据库管理员通过数据的导出导入等手工操作,才能够解决表空间的碎片问题。显然这会增加数据库管理员的工作量。为此笔者建立,除非有特别的需要,不要将这个参数设置为0。让Oracle SMON进程自动对表空间中的碎片进行管理,自动合并表空间中的空闲碎片。

不过如果某个表空间这个参数设置为0的话,不会影响到系统监视进程的其他用途,如不会影响到在例程非正常关闭时对数据的恢复操作。即即使这个参数设置为0 ,在有需要的时候其仍然可以利用重做日志文件中的记录来恢复相关的数据。

归档进程ARCH

在重做日志文件管理中有归档与非归档两种模式。在日志进行切换时,如果不对原先的日志文件进行归档,而直接覆盖的话,就叫做非归档模式。相反,在写入下一个日志文件的时候,会先对目标日志文件进行归档,这就叫做归档模式。

归档进程ARCH就是负责在重做日志文件切换后将已经写满的重做日志文件复制到归档日志文件中,以防止循环写入重做日志文件时将其覆盖。所以说,只有数据库运行在归档模式时,这个ARCH进程才会被启动。

在任何一中操作模式下,重做日志文件都会被循环使用。所以当LGWR进程在进行日志切换,需要用到下一个日志文件时,则数据库会被暂时的挂起,进行目标日志文件的归档工作。直到这个目标重做日志文件归档完毕后,数据库才会恢复正常。所以说,归档日志的操作,有时候也会影响数据库的性能,特别是当需要进行频繁的大批量数据更改的时候。

以上的相关内容就是对Oracle SMON进程中系统监视进程SMON的介绍,望你能有所收获。

【编辑推荐】

【责任编辑:孙巧华 TEL:(010)68476606】

点赞 0

oracle smon 执行记录,Oracle SMON进程中系统监视进程SMON相关推荐

  1. 用于Python中的进程和系统监视的跨平台库psutil

    最近平台运行,出现一些问题,考虑如何设置监控.发现一个Python库,感觉非常实用.分享一下. psutil(Process and system实用程序)是一个跨平台库,用于检索运行过程和系统利用( ...

  2. linux 查看防火墙对应的进程,Linux系统防火墙进程查看的实用方法

    Linux系统防火墙进程查看的实用方法 作者 HonestQiao 2008年03月17日 16:00 启动防火墙 1) 重启后生效 开启: chkconfig iptables on 关闭: chk ...

  3. oracle实例由,Oracle数据库和实例

    Oracle数据库服务器由一个数据库和至少一个数据库实例组成. 数据库是一组存储数据的文件,而数据库实例是一组管理数据库文件的内存结构. 另外,数据库由后台进程组成. 一个数据库和一个实例是紧密相连的 ...

  4. 与Oracle配套组件,oracle 组件和体系结构

    1.用户相关的进程 用户相关的进程包括用户进程和服务器进程. 一个用户进程只能连接到一个服务器进程 但是在某些oracle配置中,多个用户进程可以共享同一个服务器进程. PAG也被创建,每一个服务器进 ...

  5. linux 实验 广技师 进程管理与系统监视,Linux系统管理之进程管理

    在正式的工作环境中,作为Linux系统管理员,监视系统进程的运行情况应该是日常的工作之一.那么,到底什么是进程呢? 什么是进程 进程是正在执行的一个程序或命令,每个进程都是一个运行的实体,都有自己的地 ...

  6. Android 系统(271)---进程、守护进程的实现及进程拉活

    进程.守护进程的实现及进程拉活 1,概念 1)守护进程(Daemon) 是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某些任务.android中守护进程的实现主要由Service来完成. ...

  7. Linux 系统编程 -进程概念篇

    Linux系统编程-进程篇 冯诺依曼体系结构 冯诺依曼的两个重要思想 当代计算机的三级缓存 操作系统 操作系统的概念 操作系统的组成 操作系统作用 Linux下的操作系统体系 进程 进程概念 进程特性 ...

  8. Linux中线程和进程的区别

    Linux中线程和进程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,它是系统进行资源分配和调度的一个独立单位.例如,用户运行自己的程序,系统就创建一个进程,并为它分配资源,包括 ...

  9. Linux进程实践(1) --Linux进程编程概述

    进程 VS. 程序 什么是程序? 程序是完成特定任务的一系列指令集合. 什么是进程? [1]从用户的角度来看:进程是程序的一次执行过程 [2]从操作系统的核心来看:进程是操作系统分配的内存.CPU时间 ...

最新文章

  1. 查看提交历史 —— Git 学习笔记 11
  2. spark on k8s报错:pods “spark-pi-4f2cd9772397764d-driver“ is forbidden: User “system:anonymous“
  3. Java黑皮书课后题第10章:**10.23(实现String类)在Java库中提供了String类,给出你自己对下面方法的实现(将新类命名为MyString2)
  4. (笔记)java环境变量设置
  5. 中国央行将发行全球首个法定数字货币,消息是真的吗?
  6. linux bind日志级别,BIND日志相关(一)
  7. zabbix 监控 db2_zabbix-第二章-第二节 zabbix添加简单主机监控
  8. 项目管理知识体系指南_PMP考前冲刺丨项目管理知识体系指南(PMBOK)串讲(4)...
  9. php_imagick
  10. Linux 环境 简单启动 Java程序
  11. 解决安装office2007的各种工具时提示“安装程序找不到office.zh-cn/*”的问题
  12. Word 无法创建工作文件 请检查临时环境变量 解决方法
  13. 刻度如果数据比较大的情况下会溢出
  14. PUE 1.2,总投资达36.4亿,17600个机柜!天和防务拟建陕西最大数据中心
  15. KEIL4 的操作技巧
  16. Linux IPC:命名管道的使用
  17. 【Week2 作业】A - Maze、B - Pour Water
  18. 机票前台埋点的那些事儿
  19. python3+selenium爬取笔记本电脑详情信息
  20. 【C++】什么是对象?什么是类?

热门文章

  1. 【论文解读】Attention is All you need
  2. 【源码】APC螺旋桨的动态推力计算器
  3. python实现一个很简单的多线程爬虫
  4. 种子、天使轮创业者活动招募中...
  5. 7K325T 引脚功能详解
  6. [USF-XSim-62] 'elaborate' step failed with error(s).使用vivado进行verilog实验,无法进行仿真,如何解决?
  7. USF MSDS501 计算数据科学中文讲义 1.3 播放声音
  8. 吴裕雄--天生自然 高等数学学习:数量积、向量积和混合积
  9. 炒股做短线好还是中长线好?区别对比分析
  10. sony z5p卸载垃圾程序脚本