oracle哪些后台进程不能杀?

oracle 有很多的后台进程,在遇到特殊情况的时候如锁表,如果等待的是一个后台进程,那这时就需要考量是不是能杀掉这个后台进程?杀掉这个后台进程会不会引起实例崩溃?本着实践出真知,本文针对oracle 11g,oracle 19c,和oracle 23ai三个版本,将系统的后台进程轮流杀掉看看会不会引起实例崩溃。

1.数据库实例

1.1测试脚本轮流kill后台进程 

大家已经熟知的pmon,smon,dbwr,lgwr,ckpt,mman这六个核心进程 杀掉肯定会实例崩溃,所以脚本中剔除了这六个

#!/bin/shfunction startup(){    sqlplus / as sysdba<<EOF    startup    exitEOF}started=`ps -ef | grep pmon | grep -v grep | awk '{print $2}'`test -z "$started" && startup >> /dev/nullsleep 5# List of Oracle background processes to exclude from killingexclude_processes="pmon|smon|dbw0|dbw1|lgwr|ckpt|mman"# Get list of Oracle processesprolist=`ps -ef | grep ora | egrep -v "bash|su|h|ps|grep|more|sleep|awk|LOCAL|sy                                                                             sdba|log|$exclude_processes" | awk '{print $NF}'`for i in $prolistdo    proc_key=`echo $i | awk -F _ '{print $2}'`    pid=`ps -ef | grep $proc_key | grep -v grep | awk '{print $2}'`    test -z $pid && echo "$proc_key does not exist" || {        echo "Killing process $proc_key with PID $pid"        kill -9 $pid        sleep 20        # Check if PMON process exists        pc=`ps -ef | grep pmon | grep -v grep | wc -l`        echo "Number of PMON processes: $pc"        if [ $pc -eq 0 ]; then            echo "Killed process $proc_key has caused instance crash!"            startup >> /dev/null            sleep 5        else            echo "Killed process $proc_key has not caused instance crash."        fi    }done


这里给出三个版本的测试结果
oracle 11g

Killed process vktm has caused instance crash!Killed process gen0 has caused instance crash!Killed process dbrm has caused instance crash!

oracle 19c

Killed process clmn has caused instance crash!Killed process vktm has caused instance crash!Killed process gen0 has caused instance crash!Killed process lg00 has caused instance crash!Killed process lg01 has caused instance crash!Killed process lreg has caused instance crash!Killed process dbrm has caused instance crash!Killed process pman has caused instance crash!

oracle 23ai

Killed process clmn has caused instance crash!Killed process vktm has caused instance crash!Killed process gen0 has caused instance crash!Killed process lg00 has caused instance crash!Killed process lg01 has caused instance crash!Killed process lreg has caused instance crash!Killed process dbrm has caused instance crash!Killed process pman has caused instance crash!Killed process bg02 has caused instance crash!

1.2总结哪些数据库后台进程不能杀

oracle11g (9个)

oracle 19c (9+4=13个)
 

 官方文档中没有bgnn介绍?

  • PMON (Process Monitor):

    • 负责监视后台进程和用户进程的状态。当检测到用户进程异常或断开连接时,PMON负责清理相关资源并释放锁定。

  • SMON (System Monitor):

    • 处理系统级别的事务和数据库实例的恢复。SMON负责维护数据库的一致性,包括回滚未完成的事务和清理临时段。

  • DBWR (Database Writer):

    • 负责将缓冲区中的数据写回磁盘。DBWR根据需要执行检查点(Checkpoint),以确保数据库的一致性和持久性。

  • LGWR (Log Writer):

    • 将重做日志缓冲区中的日志记录写入重做日志文件。LGWR确保事务的持久性,允许数据库在崩溃后进行恢复。

  • CKPT (Checkpoint Process):

    • 负责在数据库实例中定期执行检查点操作。检查点将数据库缓冲区中的已修改数据写入数据文件,以便恢复操作。

  • MMAN (Memory Manager):

    • 管理数据库实例中的内存分配和使用。MMAN负责自动调整共享池和其他内存结构的大小,以优化数据库性能。

  • VKTM (Virtual Keeper of Time):

    • 提供数据库实例中的时间服务。VKTM管理数据库中所有时间相关操作,包括等待事件和事务时间戳。

    • oracle 11g新引入的后台进程。

  • DBRM (Database Resource Manager):

    • 管理数据库资源的分配和使用,包括CPU、I/O和连接数等。DBRM确保不同用户和应用程序之间的资源分配公平和有效。

    • oracle 11g新引入的后台进程

  • GEN0 (Generic Background Process):

    • 通用后台进程,用于处理数据库实例中的各种系统任务和管理操作。

    • oracle 10g引入的后台进程

    23ai (13+1=14个)

     新增bgnn进程,23ai确实有多个后台bgnn进程,kill掉还会实例崩溃 应该是关键进程,但是在官方的reference却没有?非常奇怪!有知道的大佬留言指教一下!

    • CLMN (Cleanup Main Process)

      • 功能:负责在Oracle实例中执行清理任务。

      • 职责:管理清理死进程、终止会话、事务、网络连接、空闲会话、已分离事务以及超过空闲超时的网络连接。
        oracle 12c引入和clnn一起协助pmon处理一些清理工作

    • LGnn ( Log Writer Worker)

      • 功能:lgwr辅助进程。

      • 职责:在多处理器系统中,LGWR创建worker提高进程写入性能

      • oracle19c引入协助lgwr进程处理并发提高log写入性能

    • LREG ( Listener Registration Process)

      • 功能:将Oracle实例注册到监听器。

      • 职责:通知监听器有关实例、服务、处理程序和端点的信息。确保监听器知道可以连接的数据库服务。

      • oracle 12c引入

    • PMAN (Process Manager)

      • 功能:管理Oracle数据库中的各种后台进程。

      • 职责:根据需要监视、启动和停止分发器和共享服务器进程、连接代理、用于数据库驻留连接池的池化服务器进程、作业队列进程以及可重启后台进程。

      • oracle 12c引入

2.ASM实例

除了以上的还有集群环境下ASM实例相关后台进程,有如下四个ASM关键进程不能杀

  • ASMB (ASM Background Process)

    • 功能:ASMB 是 Automatic Storage Management (ASM) 的后台进程。它主要用于维护 ASM 实例与 Oracle 实例之间的通信。ASMB 管理与 Oracle 实例的连接,处理 ASM 实例与客户端之间的元数据操作请求,并协调数据重新平衡操作。

  • RBAL (ASM Rebalance Master Process)

    • 功能:RBAL 是另一个与 ASM 相关的进程。它负责分发重新平衡任务给其他 ASM 实例中的 ARBx 从属进程。重新平衡操作在添加或删除 ASM 磁盘时执行,以确保数据在磁盘组中的均匀分布。

  • PSP0 (Process Spawner Process)

    • 功能:PSP0 是 Process Spawner Process,负责生成和管理 Oracle 实例中的其他后台进程。它确保所需的后台进程在实例启动时启动,并在需要时生成新的进程。

  • GMON (ASM Disk Group Monitor Process)

    • 功能:GMON 是 ASM 磁盘组监控进程。它主要用于监控和管理 ASM 磁盘组的状态和运行状况。GMON 确保磁盘组的一致性,并在检测到磁盘组中的错误或不一致时采取纠正措施。

ps :oracle 23ai还有一个变化后台进程的名字由原来的ora_xxxx改为了db_xxxx,放弃了沿用数十年的规则

19c

23ai (不确定正式EE版本是否沿用ora_还是使用db_)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/43876.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

游戏开黑语音-使用云服务器部署teamspeak服务(系统Ubuntu 20.04 LTS)

目录 前置物品服务器调整及部署1.重装系统2.换源3.下载teamspeak服务端并部署 连接服务器参考 前置物品 一台云服务器&#xff08;系统&#xff1a;Ubuntu 20.04 LTS) 服务器调整及部署 1.重装系统 在腾讯云官网的主机控制台内&#xff0c;选择重装系统 (由于之前为了快点和…

【刷题汇总 -- 最长回文子串、买卖股票的最好时机(一)、[NOIP2002 普及组] 过河卒】

C日常刷题积累 今日刷题汇总 - day0101、最长回文子串1.1、题目1.2、思路1.3、程序实现 2、买卖股票的最好时机(一)2.1、题目2.2、思路2.3、程序实现2.4、程序实现 -- 优化 3、[NOIP2002 普及组] 过河卒3.1、题目3.2、思路3.3、程序实现 -- dp 4、题目链接 今日刷题汇总 - day0…

Linux 入门教程 by 程序员鱼皮

本文作者&#xff1a;程序员鱼皮 免费编程学习 - 编程导航网&#xff1a;https://www.code-nav.cn 大家好&#xff0c;我是鱼皮。 前两天我学编程的老弟小阿巴过生日&#xff0c;我问他想要什么礼物。 本来以为他会要什么游戏机、Q 币卡、鼠标键盘啥的&#xff0c;结果小阿巴…

短视频矩阵:批量发布的秘密揭秘

在数字化时代&#xff0c;短视频已经成为一种广受欢迎的媒体形式。无论是用于品牌推广、产品营销还是个人创作&#xff0c;短视频都提供了一种直观、生动的方式来吸引观众的注意力。然而&#xff0c;有效地制作、管理和发布短视频对于许多创作者和企业来说是一个挑战。 为此&am…

什么是 C 语言中的宏定义?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01; &#x1f4d9;C 语言百万年薪修炼课程 通俗易懂&#xff0c;深入浅出&#xff0c;匠心打磨&#xff0c;死磕细节&#xff0c;6年迭代&#xff0c;看过的人都说好。 文章目…

动态规划之数字三角形模型+最长上升子序列模型

首先&#xff0c;我们从集合角度重新看待DP&#xff1a; 直接看题&#xff1a;https://www.acwing.com/problem/content/1029/ 就是取纸条的原题&#xff0c;我们令f[i1,j1,i2,j2]表示从(1,1),(1,1)分别走到(i1,j1),(i2,j2)的路径的max i1j1i2j2&#xff0c;于是我们可以把状…

机器学习 | 对K-Means聚类假设的研究演示及实践示例

我们在Scikit-learn对K-means假设的调查中探索了揭示算法优势和局限性的场景。我们研究了K-means对不正确的聚类大小的敏感性&#xff0c;它在各向异性分布中面临的困难&#xff0c;它在不同的聚类方差中面临的困难&#xff0c;以及使用合成数据集的大小不均匀的聚类问题。我们…

准备工作+1、请求和响应+2、模型和管理站点

Django快速入门——创建一个基本的投票应用程序 准备工作1、创建虚拟环境2、安装django 1、请求和响应&#xff08;1&#xff09;创建项目&#xff08;2&#xff09;用于开发的简易服务器&#xff08;3&#xff09;创建投票应用&#xff08;4&#xff09;编写第一个视图1、编写…

家用激光投影仪品牌排行榜:这几个品牌口碑好产品好最适合家用

现在人们生活水平提升&#xff0c;对投影这类产品的认知接受度也提升&#xff0c;有条件的家庭都想在家里整一个家庭影院&#xff0c;对于这些消费者来说挑选一台性价比高的家用投影至关重要&#xff0c;既省到钱又买对了产品&#xff1b;投影市场发展迅速目前市面上大大小小的…

mongo数据库迁移

前言 mongo数据库迁移的方式目前常见的有两种&#xff1a; 1&#xff0c;mongodump与mongorestore 2&#xff0c;mongoimport与mongoexport 二者主要区别有&#xff1a; 1、mongoexport 可以导出json和csv格式&#xff0c; mongodump导出的是bson可读性不如前者 2&#xff0c;…

在Windows 10上快速显示桌面的几种方法,总有一种适合你

序言 有时你需要在Windows 10中快速查看你的桌面,但你不想乏味地最小化每个打开的应用程序窗口,或者移动它们并丢失它们的布局。幸运的是,有几种方法可以让你快速查看桌面,然后从你停止的地方重新开始。 如何使用任务栏按钮显示桌面 假设你正在随意浏览你最喜欢的网站,…

服了,jenkins找不到advanced

新手下载的最新版本&#xff0c;过新手入门的时候一直过不去&#xff0c;就跳过了。 想下载一个汉化&#xff0c;还下载不了。根据提示搜索&#xff0c;结果大家让去advanced找url&#xff0c;也找不到。

FreeRTOS 队列

队列是一种任务到任务、任务到中断、中断到任务数据交流的一种机制。在队列中可以存 储数量有限、大小固定的多个数据&#xff0c;队列中的每一个数据叫做队列项目&#xff0c;队列能够存储队列项 目的最大数量称为队列的长度&#xff0c;在创建队列的时候&#xff0c;就需要指…

揭秘与应对:病毒伪装文件夹的数据恢复策略

在数字时代&#xff0c;数据安全是每个人不可忽视的重要议题。而伪装文件夹&#xff0c;作为一种狡猾的数据安全威胁&#xff0c;正逐渐浮出水面&#xff0c;成为用户需要警惕的对象。这些伪装文件夹看似普通&#xff0c;实则隐藏着不为人知的秘密&#xff0c;它们通过模仿正常…

linux系统操作/基本命令/vim/权限修改/用户建立

Linux的目录结构&#xff1a; 一&#xff1a;在Linux系统中&#xff0c;路径之间的层级关系&#xff0c;使用:/来表示 注意:1、开头的/表示根目录 2、后面的/表示层级关系 二&#xff1a;在windows系统中&#xff0c;路径之间的层级关系&#xff0c;使用:\来表示 注意:1、D:表示…

移动应用性能收集工具原理解析

性能收集分析相关工具总览 收集、分析、展示移动应用性能数据的工具很多&#xff0c;大致可以分为如下几类。例如可收集多项性能指标的移动性能工具&#xff0c;perfdog&#xff0c;Solopi&#xff0c;其中Solopi开源&#xff0c;pefdog商业工具。可进行Crash分析的工具&#x…

猫超卡怎么使用?

天猫超市卡好像只能买天猫的东西 但是有时候淘宝、京东打折比天猫的单价还便宜 这样的话&#xff0c;猫超卡好像也没多大用处 这不&#xff0c;上个月618凑单的东西比在天猫超市买划算多了 最后我直接把猫超卡在收卡云上折现了&#xff0c;超划算

编程学单词:delta(希腊字母Δ/δ)

希腊字母表的第四个字母&#xff0c;大写为Δ&#xff0c;小写为δ。 (笔记模板由python脚本于2024年07月11日 12:32:56创建&#xff0c;本篇笔记适合喜欢写代码&#xff0c;更喜欢鼓捣Python的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.pyth…

算法 | NOIP1999 Cantor表

算法篇——Cantor的数表 - SteveWang - 博客园 (cnblogs.com) #include <bits/stdc.h> using namespace std; int high(int n) {return n*(n1)/2; } int main() {int k;cin>>k;int n1;while(1){if(high(n)>k){break;}n;} int mhigh(n);int wm-k1;if(n%20){cout…

Arcgis Api 三维聚合支持最新版API

Arcgis Api 三维聚合支持最新版API 最近有同学问我Arcgis api 三维聚合&#xff0c;官方还不支持三维聚合API&#xff0c;二维可以。所以依旧是通过GraphicLayers 类来实现&#xff0c;可支持最新Arcgis Api版本 效果图&#xff1a;