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_)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

昇思25天学习打卡营第23天 | Pix2Pix实现图像转换

内容介绍&#xff1a; Pix2Pix是基于条件生成对抗网络&#xff08;cGAN, Condition Generative Adversarial Networks &#xff09;实现的一种深度学习图像转换模型&#xff0c;该模型是由Phillip Isola等作者在2017年CVPR上提出的&#xff0c;可以实现语义/标签到真实图片、灰…

二分法求函数的零点 信友队

题目ID&#xff1a;15713 必做题 100分 时间限制: 1000ms 空间限制: 65536kB 题目描述 有函数&#xff1a;f(x) 已知f(1.5) > 0&#xff0c;f(2.4) < 0 且方程 f(x) 0 在区间 [1.5,2.4] 有且只有一个根&#xff0c;请用二分法求出该根。 输入格式 &#xff08;无…

政安晨:【Keras机器学习示例演绎】(五十三)—— 使用 TensorFlow 决策森林进行分类

目录 简介 设置 准备数据 定义数据集元数据 配置超参数 实施培训和评估程序 实验 1&#xff1a;使用原始特征的决策森林 检查模型 实验 2&#xff1a;目标编码决策森林 创建模型输入 使用目标编码实现特征编码 使用预处理器创建梯度提升树模型 训练和评估模型 实验…

从零开始学习嵌入式----C语言框架梳理与后期规划

目录 一、环境搭建. 二、见解 三、C语言框架梳理 四、嵌入式学习规划流程图&#xff08;学习顺序可能有变&#xff09; 一、环境搭建. C语言是一门编程语言&#xff0c;在学习的时候要准备好环境。我个人比较喜欢用VS,具体怎么安装请百度。学习C语言的时候&#xff0c;切忌…

Spring中如何操作Redis

Spring毕竟是Java中的一个主流框架&#xff0c;如何在这个框架中使用Redis呢&#xff1f; 创建项目并引入相关依赖 然后进行创建。 至此就将Redis的相关依赖引入进来了。 编写Redis配置 将application.properties修改成application.yml 然后编写如下配置&#xff1a; spr…

各向异性含水层中地下水三维流基本微分方程的推导

各向异性含水层中地下水三维流基本微分方程的推导 参考文献&#xff1a; [1] 刘欣怡,付小莉.论连续性方程的推导及几种形式转换的方法[J].力学与实践,2023,45(02):469-474. 文章链接 水均衡的基本思想&#xff1a; ∑ 流 入 − ∑ 流 出 Δ V \sum 流入-\sum 流出\Delta V ∑…

ArduPilot开源飞控之AP_Mount_Siyi

ArduPilot开源飞控之AP_Mount_Siyi 1. 源由2. 框架设计2.1 类和继承2.2 公共方法2.3 保护方法2.4 私有成员和方法2.5 解析状态2.6 重要成员变量 3. 重要方法3.1 AP_Mount_Siyi::init3.2 AP_Mount_Siyi::update3.3 AP_Mount_Siyi::read_incoming_packets3.4 AP_Mount_Siyi::proc…

LabVIEW实现LED显示屏视觉检测

为了满足LED显示屏在生产过程中的严格质量检测需求&#xff0c;引入自动化检测系统是十分必要的。传统人工检测方式存在检测强度高、效率低、准确性差等问题&#xff0c;自动化检测系统则能显著提高检测效率和准确性。视觉检测系统的构建主要包含硬件和软件两个部分。 视觉系统…

深度学习论文: LLaMA: Open and Efficient Foundation Language Models

深度学习论文: LLaMA: Open and Efficient Foundation Language Models LLaMA: Open and Efficient Foundation Language Models PDF:https://arxiv.org/pdf/2302.13971.pdf PyTorch: https://github.com/shanglianlm0525/PyTorch-Networks 1 概述 本文介绍了LLaMA&#xff0…

一二三应用开发平台应用开发示例(7)——文档功能实现示例

概述 在完成文件夹配置工作后&#xff0c;接下来配置文档管理系统最核心的管理对象“文档”。 依旧是使用平台低代码配置工作来配置&#xff0c;配置流程跟文件夹的配置是相同的&#xff0c;以下简要说明&#xff0c;重点是新涉及到的功能或注意点。 创建实体 配置模型属性 …

【Dison夏令营 Day 15】 Python 鸡蛋捕手

在本次课程中&#xff0c;我们使用 Python 创建了经典的 "抓蛋 "游戏。在这个游戏中&#xff0c;每抓到一个鸡蛋就能赢得 10 分&#xff0c;而每掉落一个鸡蛋就会损失一条命。 小时候&#xff0c;我们都玩过 "抓鸡蛋 "游戏。我们使用海龟软件包在 Python …

【linux】阿里云centos配置邮件服务

目录 1.安装mailx服务 2./etc/mail.rc 配置增加 3.QQ邮箱开启smtp服务&#xff0c;获取授权码 4.端口设置&#xff1a;Linux 防火墙开放端口-CSDN博客 5.测试 1.安装mailx服务 yum -y install mailx 2./etc/mail.rc 配置增加 #邮件发送人 set from924066173qq.com #阿里…

windows USB 设备驱动开发-USB电源管理(一)

符合通用串行总线 (USB) 规范的 USB 设备的电源管理功能具有一组丰富而复杂的电源管理功能。 请务必了解这些功能如何与 Windows 驱动程序模型 (WDM) 交互&#xff0c;特别是 Microsoft Windows 如何调整标准 USB 功能以支持系统唤醒体系结构。 基于内核模式驱动程序框架的 US…

android13 rom 开发总纲说明

1. 这里是文章总纲&#xff0c;可以在这里快速找到需要的文章。 2. 文章一般是基于标准的android13&#xff0c;有一些文章可能会涉及到具体平台&#xff0c;例如全志&#xff0c;瑞芯微等一些平台。 3.系统应用 3.1系统应用Launcher3桌面相关&#xff1a; 3.2系统应用设置S…

NLP入门——词袋语言模型的搭建、训练与预测

卷积语言模型实际上是取了句子最后ctx_len个词作为上下文输入模型来预测之后的分词。但更好的选择是我们做一个词袋&#xff0c;将所有分词装在词袋中作为上下文&#xff0c;这样预测的分词不只根据最后ctx_len个分词&#xff0c;而是整个词袋中的所有分词。 例如我们的序列是&…

绝对值不等式运用(C++)

货仓选址 用数学公式表达题意&#xff0c;假设有位置a1~an,假设选址在x位置处&#xff0c;则有&#xff1a; 如何让这个最小&#xff0c;我们把两个式子整合一下&#xff0c;利用绝对值不等式&#xff1a; 我们知道&#xff1a; 如下图所示&#xff1a;到A&#xff0c;B两点&…

【深度学习入门篇 ②】Pytorch完成线性回归!

&#x1f34a;嗨&#xff0c;大家好&#xff0c;我是小森( &#xfe61;ˆoˆ&#xfe61; )&#xff01; 易编橙终身成长社群创始团队嘉宾&#xff0c;橙似锦计划领衔成员、阿里云专家博主、腾讯云内容共创官、CSDN人工智能领域优质创作者 。 易编橙&#xff1a;一个帮助编程小…

简单状压dp(以力扣464为例)

目录 1.状态压缩dp是啥&#xff1f; 2.题目分析 3.解题思路 4.算法分析 5.代码分析 6.代码一览 7.结语 1.状态压缩dp是啥&#xff1f; 顾名思义&#xff0c;状态压缩dp就是将原本会超出内存限制的存储改用更加有效的存储方式。简而言之&#xff0c;就是压缩dp的空间。 …

昇思MindSpore学习笔记6-05计算机视觉--SSD目标检测

摘要&#xff1a; 记录MindSpore AI框架使用SSD目标检测算法对图像内容识别的过程、步骤和方法。包括环境准备、下载数据集、数据采样、数据集加载和预处理、构建模型、损失函数、模型训练、模型评估等。 一、概念 1.模型简介 SSD目标检测算法 Single Shot MultiBox Detecto…

WebRTC群发消息API接口选型指南!怎么用?

WebRTC群发消息API接口安全性如何&#xff1f;API接口怎么优化&#xff1f; WebRTC技术在现代实时通信中占据了重要地位。对于需要实现群发消息功能的应用程序来说&#xff0c;选择合适的WebRTC群发消息API接口是至关重要的。AokSend将详细介绍WebRTC群发消息API接口的选型指南…