oracle后台进程

简介: DBWR DBWR执行将数据块缓冲区写入数据文件的工作。 下列情况DBWR会将脏块写入磁盘服务器进程将一缓冲区移入dirty链,当dirty链达到临界长度时,服务器进程会通知DBWR写入操作。

DBWR
DBWR执行将数据块缓冲区写入数据文件的工作。
下列情况DBWR会将脏块写入磁盘

  • 服务器进程将一缓冲区移入dirty链,当dirty链达到临界长度时,服务器进程会通知DBWR写入操作。临界长度是数据块隐藏参数_DB_BLOCK_WRITE_BATCH值的一半
  • 服务器进程在LRU表中查找可用的数据块缓冲,如果查找了_DB_BLOCK_MAX_SCAN_CNT定义数量的缓冲区后,仍没有查到未用缓冲区,则停止查找,并通知DBWR写入操作
  • 如果DBWR3秒未活动,则出现超时。 DBWR对LRU表查找指定数目的缓冲区,将找到的脏缓冲区写入磁盘。每当超时,DBWR就查找新的缓冲区组。查找的数目为_DB_BLOCK_WRITE_BATCH值得两倍
  • 出现检查点,LGWR指定一修改缓冲区表写入磁盘,DBWR负责写入

LGWR
LGWR负责将日志缓冲区写入到日志文件
触发LGWR写操作的条件

  • 当用户进程提交事务时,写入一个提交记录
  • 每3秒将日志缓冲区输出
  • 当缓冲区1/3满时
  • 当DBWR将修改缓冲区写入磁盘时,则将日志缓冲区输出
  • 当log buffer达到1M时

CKPT
CKPT进程在检查点出现时,对全部数据文件的文件头进行修改,并在控制文件中记录该检查点。

SMON
SMON负责实例启动时执行实例恢复,并清理不在使用的临时段。9i开始,事务回滚操作也是由SMON负责。SMON本身不做恢复操作,主要起整体协调作用。

PMON
PMON在用户进程出现故障时执行进程恢复,负责清理存储区和释放该进程所使用的资源

RECO
RECO启用分布式选项才会存在该进程。RECO能够自动解决分布式事务中的故障

MMAN
MMAN实现共享内存自动管理的功能,自动调整共享内存 各个组件的大小

ARCH
ARCH将已填满的在线日志文件复制到指定的存储设备

LCKn
LCKn在具有并行服务器选件的环境下使用,可多至10个进程,用于实例间的封锁

CJQ0和JXXX
它是一个任务队列的调度进程,负责从job$表中找到需要执行的任务,并分配job进程执行,如果job进程不足,会自动产生新的job进程(JOB_QUEUE_PROCESSES参数范围内).cjq0进程如果被杀掉,会重启。所以JXXX进程也可以杀掉。当一些job进程占用大量系统资源,导致数据库性能问题时,可以考虑杀掉job进程,不过在杀掉前,要做好分析,如果job进程正在做一个数据量很大的大型修改事务,那么杀掉job会导致大量的回滚操作,使系统性能问题加剧。

QMNC和QXXX
QMNC是队列监控同步进程。QXXX是队列服务进程

PMON,SMON,DBWR,LGWR,RECO,CKPT,MMAN,PSP0为oracle数据库必不可少的核心进程,无论哪个出现故障,都会导致数据库实例崩溃

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
目录
相关文章
|
Unix Shell Linux
Linux 终端和进程的关系,以及在终端前后台切换进程
Linux 终端和进程的关系,以及在终端前后台切换进程
416 1
|
Linux Shell
Linux 进程的前台/后台切换
当你用shell启动一个程序时,往往他是在前台工作的。程序会一直占用终端命令行,例如你在前台解压的时候必须等着,期间干不了别的事(除非另开一个终端)。 例如经常用连接到远程服务器执行脚本的时候,如果本地网络中断后,这个时候前台进程就结束了,比较的懊恼,必须重新执行。
455 6
|
5月前
|
监控 编译器 Python
如何利用Python杀进程并保持驻留后台检测
本教程介绍如何使用Python编写进程监控与杀进程脚本,结合psutil库实现后台驻留、定时检测并强制终止指定进程。内容涵盖基础杀进程、多进程处理、自动退出机制、管理员权限启动及图形界面设计,并提供将脚本打包为exe的方法,适用于需持续清理顽固进程的场景。
|
9月前
|
Linux Shell
Linux 进程前台后台切换与作业控制
进程前台/后台切换及作业控制简介: 在 Shell 中,启动的程序默认为前台进程,会占用终端直到执行完毕。例如,执行 `./shella.sh` 时,终端会被占用。为避免不便,可将命令放到后台运行,如 `./shella.sh &`,此时终端命令行立即返回,可继续输入其他命令。 常用作业控制命令: - `fg %1`:将后台作业切换到前台。 - `Ctrl + Z`:暂停前台作业并放到后台。 - `bg %1`:让暂停的后台作业继续执行。 - `kill %1`:终止后台作业。 优先级调整:
760 5
|
Android开发 开发者 Kotlin
Android 多进程情况下判断应用是否处于前台或者后台
本文介绍在多进程环境下判断Android应用前后台状态的方法。通过`ActivityManager`和服务信息`RunningAppProcessInfo`可有效检测应用状态,优化资源使用。提供Kotlin代码示例,帮助开发者轻松集成。
1103 8
|
安全 API C#
C# 如何让程序后台进程不被Windows任务管理器强制结束
C# 如何让程序后台进程不被Windows任务管理器强制结束
600 0
|
存储 缓存 NoSQL
Redis性能优化问题之优化 Redis fork 耗时严重的问题,如何解决
Redis性能优化问题之优化 Redis fork 耗时严重的问题,如何解决
|
应用服务中间件 nginx
cmd 杀掉 nginx后台进程 命令杀掉nginx后台 nginx 常用命令
cmd 杀掉 nginx后台进程 命令杀掉nginx后台 nginx 常用命令
1956 0
|
XML Go 数据格式
Windows自定义后台进程并设置为开机启动
可以在`Windows`上配置任意一个可执行文件后台启动,并且设置为开机启动。
Windows自定义后台进程并设置为开机启动
|
前端开发 Android开发 iOS开发
应用研发平台EMAS使用 aliyun-react-native-push 库接入推送和辅助通道,推送都可以收到,但是在App切到后台或者杀掉进程之后就收不到推送了,是需要配置什么吗?
【2月更文挑战第31天】应用研发平台EMAS使用 aliyun-react-native-push 库接入推送和辅助通道,推送都可以收到,但是在App切到后台或者杀掉进程之后就收不到推送了,是需要配置什么吗?
449 2

推荐镜像

更多