Oracle 19c Linux平台启动时出现ORA-00800错误浅析

这篇具有很好参考价值的文章主要介绍了Oracle 19c Linux平台启动时出现ORA-00800错误浅析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这里简单介绍一下如何处理解决Linux平台下Oracle 19c启动时,告警日志出现ORA-00800错误的问题,详情介绍请见下面内容:

环境描述:

操作系统:Red Hat Enterprise Linux release 8.8 (Ootpa)

数据库 :19.16.0.0.0 企业版

问题描述:

在Oracle 19c启动时,在Oracle的告警日志中会出现下面这样一条告警信息:

Errors in file /opt/oracle19c/diag/rdbms/gsp/gsp/trace/gsp_vktm_1900.trc  (incident=51251) (PDBNAME=CDB$ROOT):
ORA-00800: soft external error, arguments: [Set Priority Failed], [VKTM], [Check traces and OS configuration], [Check Oracle documen
t and MOS notes], []
Incident details in: /opt/oracle19c/diag/rdbms/gsp/gsp/incident/incdir_51251/gsp_vktm_1900_i51251.trc

分析解决:

分析ORA-00800错误的信息,我们可以知道这个错误是由于不正确的系统配置或数据库设置导致的。这个失败目前对实例不是致命的,但是,这可能会导致在查询执行期间发生意外行为。所以最好还是解决掉这个问题

$ oerr ora 00800
00800, 00000, "soft external error, arguments: [%s], [%s], [%s], [%s], [%s]"
// *Cause:  An improper system configuration or setting resulted in failure.
//          This failure is not fatal to the instance at the moment, however, this might result
//          in an unexpected behavior during query execution.
// *Action: Check the database trace files and rectify system settings or the configuration.
//          For additional information, refer to Oracle database documentation or refer to
//          My Oracle Support (MOS) notes.

首先,我们检查oradism文件的权限

cd $ORACLE_HOME/bin
$ ls -lrt oradism
-rwsr-x--- 1 root oinstall 147848 Apr 17  2019 oradism

如上所示,检查发现oradism文件的权限正常,如果它的权限不正常,那么就必须修改其权限(使用root用户授权)

chown root $ORACLE_HOME/bin/oradism
chmod 4750 $ORACLE_HOME/bin/oradism

然后我们检查数据库的优先级别:VKTM还是LMS*

SQL> set linesize 680
SQLcol Parameter for a30
SQLcol "Session Value" for a16
SQLcol "Instance Value" for a16
SQLcol "Description"  for a30
SQLselect a.ksppinm "Parameter", b.ksppstvl "Session Value", c.ksppstvl "Instance Value", a.KSPPDESC "Description" 
  2  from x$ksppi a, x$ksppcv b, x$ksppsv c 
  3  where a.indx = b.indx and a.indx = c.indx and a.ksppinm like '_%' and a.ksppinm like '_highest_priority_process%';

Parameter                      Session Value    Instance Value   Description
------------------------------ ---------------- ---------------- ------------------------------
_highest_priority_processes    VKTM             VKTM             Highest Priority Process Name
                                                                 Mask


SQL> 

如上所示,此参数值设置正确,如果不正确的话,那么必须优先级为VKTM

alter system set "_high_priority_processes"='VKTM' scope=spfile;

然后我们检查Cgroup配置

$ ps -eaf|grep -i vktm |grep -v grep
oracle      1900       1  0 13:53 ?        00:00:00 ora_vktm_gsp
$ cat /proc/1900/cgroup | grep cpu
7:cpu,cpuacct:/user.slice
2:cpuset:/

$ ps -eaf|grep -i pmon|grep -v grep
oracle      1888       1  0 13:53 ?        00:00:00 ora_pmon_gsp
$ cat /proc/1888/cgroup | grep cpu
7:cpu,cpuacct:/user.slice
2:cpuset:/

检查发现设置显示其他路径,检查cpu.rt_runtime_us的值,如下所示

# cat /sys/fs/cgroup/cpu,cpuacct/system.slice/cpu.rt_runtime_us
0
# cat /sys/fs/cgroup/cpu,cpuacct/user.slice/cpu.rt_runtime_us
0

根据官方文档其值应该为0和950000,可以使用下面命令修改,但是系统重启后,此参数设置会失效

echo 0 > /sys/fs/cgroup/cpu,cpuacct/system.slice/cpu.rt_runtime_us

echo 950000 > /sys/fs/cgroup/cpu,cpuacct/user.slice/cpu.rt_runtime_us

如果要使其永久生效,我们必须在cgconfig.conf文件中设置,具体操作也很简单,官方文档[1]中有详细步骤,具体如下所示:

Install libcgroup-tools* on the system. (You can find this package on OL7 latest repository)
# yum install libcgroup-tools
/etc/cgconfig.conf will be created automatically when you start cgconfig service

# systemctl start cgconfig
Edit /etc/cgconfig.conf with user.slice parameter below.

group user.slice {
cpu {
cpu.rt_period_us = 1000000;
cpu.rt_runtime_us = 950000;
}
}
Restart cgfconfig service so the value will take effect.

# systemctl restart cgconfig
Enable cgconfig so it will take effect during reboot.

#systemctl enable cgconfig
Reboot the server and check the value if it is now persistent.

处理过后,验证测试,这个错误解决了。重启Oracle实例,告警日志中不会出现ORA-00800错误了。问题解决了,更多详细分析,建议参考ORA-00800: soft external error, arguments: [Set Priority Failed], [VKTM] (Doc ID 2931494.1)[2]

参考资料

[1]

1: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2718971.1&displayIndex=1#FIX

[2]

2: https://support.oracle.com/epmos/faces/DocumentDisplay?id=2718971.1文章来源地址https://www.toymoban.com/news/detail-741812.html

到了这里,关于Oracle 19c Linux平台启动时出现ORA-00800错误浅析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Oracle 19c 安装(Linux)

    操作系统基础配置 本章节所有操作使用root用户 关闭防火墙和SELINUX 关闭selinux: 编辑/etc/selinux/config 文件 RPM包安装 Oracle安装需要以下RPM包: compat-libcap1-1.10-1 (x86_64) gcc-4.4.4-13.el6 (x86_64) gcc-c+±4.4.4-13.el6 (x86_64) glibc-devel-2.12-1.7.el6 (x86_64) libaio-devel-0.3.107-10.el6 (x86_64) libstdc+±devel-

    2024年02月02日
    浏览(53)
  • Linux中Oracle 19C安装教程

    oracle19C下载地址 Oracle Database 19c Download for Linux x86-64 preinstall-19c 下载地址 Oracle Linux 7 (x86_64) Latest | Oracle, Software. Hardware. Complete. 安装目录 /opt/oracle  磁盘40G  文件系统类型 XFS  用于安装数据库 数据文件目录 /oradata 磁盘100G  文件系统类型 XFS  用于存放数据 具体步骤: (此步

    2024年02月15日
    浏览(40)
  • Oracle 19C RAC安装PSU oui-patch.xml权限错误

    Oracle 19C RAC安装PSU时,节点2安装失败,经排查错误原因为oui-patch.xml文件权限错误。 Oracle官方建议oui-patch.xml文件权限,改成660或者666: 权限修改完成后,安装psu还是失败,尝试回滚也会失败。 然后,查看节点2补丁情况,会发现没有最新的补丁目录: 需要将节点1最新的补丁

    2024年02月11日
    浏览(41)
  • Linux 服务器 Oracle19C安装

    原文: 【精选】Oracle | CentOS7安装Oracle19c数据库(RPM包)_oracle-database-preinstall-19c-1.0-1.el7.x86_64.rp_Thorold\\\'s Deer的博客-CSDN博客 第一个软件包 :Oracle Database 19c Download for Linux x86-64 第二个包 :Oracle Linux 7 (x86_64) Latest

    2024年02月08日
    浏览(43)
  • Oracle19c数据库安装 - 基于Linux环境

    安装文件链接在文章末尾。 本文介绍多种在Linux环境下安装Oracle19c数据库软件和Oracle数据库的方式,多种方式选择其中一种即可,适用于19c数据库学习环境的配置。 数据库软件和数据库是不同的,都需要安装。 关闭防火墙和selinux 更改完reboot,使其生效 搭建yum,安装依赖包

    2024年02月15日
    浏览(57)
  • 基于RHEL9,ORACLE LINUX 9安装Oracle 19c 数据库

    要基于RHEL9,ORACLE LINUX 9 或RHEL分支,安装ORACLE 19C 数据库,在一年前,没有人会告诉你能够成功,都会告诉你说19C只支持 RHEL7/8,在RHEL9上不支持, 如果你非要安装,在安装到11%时,就会报以下错误: Error in invoking target \\\' libasmclntsh19.ohso libasmperl19.ohso client_sharedlib \\\' of makefile \\\'/u

    2024年02月03日
    浏览(58)
  • Linux7 安装 Oracle 19C RAC 详细图文教程

    本文是按照:https://www.modb.pro/db/154424的思路进行编写 安装RAC前,当然要先做好规划。具体包含以下几方面: 节点 主机版本 主机名 实例名 Grid/Oracle版本 Public IP Private IP Virtual IP Scan IP 1 rhel7.9 p19c01 p19c01 19.11.0.0 192.168.134.232 1.1.1.1 192.168.134.234 192.168.134.236 2 rhel7.9 p19c02 p19c02 19.11

    2024年02月19日
    浏览(39)
  • Linux下安装Oracle19c(亲测可用!真保姆级安装教程)

    我是自己下载好 安装oracle19c所需要的的依赖rpm,然后通过u盘copy到虚拟机下安装oracle19c的!需要下载以下几个压缩包; 下载链接如下: 链接: https://pan.baidu.com/s/1uAmhloft070U-OsgHaRxug 提取码: 7vss 复制这段内容后打开百度网盘手机App,操作更方便哦- –来自百度网盘超级会员v1的分

    2024年03月28日
    浏览(49)
  • VMware虚拟机19c RAC+Oracle Linux 7.9安装手册

    目录 第一章 整体规划 1.1 拓扑结构 1.2 主机规划信息 1.3 IP规划信息 1.4 存储规划信息 1.5 数据库规划信息 整体数据库安装规划 第二章 操作系统安装及配置 2.1 创建虚拟机 2.2 OS安装 2.2.1 服务器配置信息表 2.2.2 安装注意事项 2.3 OS配置 2.3.1 ip地址配置 2.3.2 hosts解析文件配置 2.3

    2024年02月04日
    浏览(46)
  • <Oracle>《Linux 下安装Oracle数据库 - Oracle 19C By CentOS 8 》(第三部分)

    2.5.1 修改centos主机名 类型 英文 解释 静态 Static hostname 内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名。 瞬态 Tansient hostname 系统运行时临时分配的主机名,例如,通过DHCP或mDNS服务器分配。 灵活 Pretty hostname 有人叫做“别名”主机名,允许使用自由形式(包括

    2024年02月11日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包