Oracle12C RAC PATCH安装p30354375
sinye56 2024-10-03 00:34 6 浏览 0 评论
介绍
本文介绍安装p30354375,这个patch是用来解决ORA-00600 [KSXP_EXCEPT] AND [IPC_RECEIVE_DONE_1] ON 12.2 RAC的问题。通过MOS下载patch包,解压后查看README.txt文件,看看安装需求和安装步骤,本文需要先应用32507738,然后再应用30354375。测试中用到滚动升级方式,即先在节点1上执行操作,然后再节点2上执行操作,操作期间保留一个节点对外提供服务!
服务器IP | 数据库版本 | 实例名 | |
rac1 | 192.168.5.13 | 12.2.0.1 | racdb1 |
rac2 | 192.168.5.14 | 12.2.0.1 | racdb2 |
查看30354375的README.txt可以看到(重点):
1.要安装p30354375需要先确保OPATCH的版本12.2.0.1.23 or higher,默认版本较低
2.确保12c Release 12.2.0.1.210420DBAPR2021RU Patch Set Update (PSU) 32507738 is already applied on the Oracle Database
3.其他信息略
查看32507738的README.txt可以看到
1.OPATCH的版本12.2.0.1.23 or higher
2.Oracle JavaVM 12.2.0.1.x(可以忽略)
3.如果需要grid的patch,需要下载另一个包(暂时忽略)
4.其他信息略
PATCH下载
通过文章Doc ID 2630730.1,可以找到patch号30354375,通过patch号可以找到对应的包。
一共需要3个安装包,下载完成后,上传到2个节点。
更新OPATCH
根据Readme.txt的要求,首先更新Opatch,备份老的Opatch目录,然后将解压出来的新Opatch目录放到$ORACE_HOME下。
[oracle@rac1 ~]$ cd $ORACLE_HOME
[oracle@rac1 db_1]$ mv OPatch/ OPatch_bak
[oracle@rac1 ~]$ unzip p6880880_122010_Linux-x86-64.zip
[oracle@rac1 ~]$ mv OPatch/ /u01/app/oracle/product/12.2.0/db_1/
[oracle@rac1 ~]$ cd /u01/app/oracle/product/12.2.0/db_1/OPatch
查询Opatch版本(12.2.0.1.24):
[oracle@rac1 OPatch]$ ./opatch version
上述操作在节点2上也要执行一遍!
应用32507738
1.解压
[oracle@rac1 ~]$unzip p32507738_122010_Linux-x86-64.zip
[oracle@rac1 ~]$ mv 32507738/ /u01/app/oracle/product/12.2.0/db_1/OPatch/
2.执行冲突检查
[oracle@rac1 OPatch]$ cd 32507738/
[oracle@rac1 32507738]$ ../opatch prereq CheckConflictAgainstOHWithDetail -ph ./
检查通过后,关闭数据库实例:
SQL> shutdown immediate;
3.应用补丁
[oracle@rac1 32507738]$ ../opatch apply
从图中可以看到,patch apply后有错误,这个报错是权限相关,用root修改即可:
[root@rac1 ~]# cd /u01/app/oracle/product/12.2.0/db_1/bin
[root@rac1 bin]# ll extjobO
-rwsr-x--- 1 root oinstall 2251869 Apr 15 10:55 extjobO
[root@rac1 bin]# chown oracle:oinstall extjobO
[root@rac1 bin]# chmod 600 extjobO
[root@rac1 bin]# ll extjobO
-rw------- 1 oracle oinstall 2251869 Apr 15 10:55 extjobO
4.其他操作
1.修改oracle执行文件权限:
[root@rac1 bin]# ll oracle*
-rwsr-s--x 1 oracle oinstall 410101002 Apr 22 15:00 oracle
-rw------- 1 oracle asmadmin 408114239 Apr 15 10:55 oracleO ---自动备份文件
[root@rac1 bin]#chown oracle:asmadmin oracle
[root@rac1 bin]#chmod 6751 oracle (文件带有s权限)
注意:在执行的过程中,会自动备份执行文件$ORACLE_HOME/bin/oracle,同时会改变权限,需要将文件权限修改回去,否则在启动数据库的时候,就会报找不到控制文件,找不到共享磁盘。
2.启动节点1的数据库:
SQL> startup
在alter日志中可以看到patch相关信息:
至此,32507738应用完成,相同的操作在第二个节点也执行一遍,然后进行下一步!
Load Modified SQL Files into the Database
注意:这个操作只需要在一个节点上执行
[oracle@rac1 ~]$cd $ORACLE_HOME/OPatch
[oracle@rac1 OPatch]$ ./datapatch -verbose
可以看到有报错,经过查询解决报错,解决办法如下:
1.解决GSMADMIN_INTERNAL.DBMS_GSM_POOLADMIN报错:
SQL >grant EXECUTE on DBMS_BACKUP_RESTORE to PUBLIC;
SQL >grant EXECUTE on DBMS_JOB to PUBLIC;
SQL >grant EXECUTE on DBMS_LOB to PUBLIC;
SQL >grant EXECUTE on DBMS_OBFUSCATION_TOOLKIT to PUBLIC;
SQL >grant EXECUTE on DBMS_RANDOM to PUBLIC;
SQL >grant EXECUTE on DBMS_SQL to PUBLIC;
SQL >grant EXECUTE on DBMS_SYS_SQL to PUBLIC;
SQL >grant EXECUTE on UTL_FILE to PUBLIC;
SQL >grant EXECUTE on UTL_HTTP to PUBLIC;
SQL >grant EXECUTE on UTL_SMTP to PUBLIC;
SQL >grant EXECUTE on UTL_TCP to PUBLIC;
SQL > @?/rdbms/admin/dbmsgwm.sql
SQL > @?/rdbms/admin/prvtgwm.sql
2.DBMS_SHARED_POOL报错
根据Error at line 2457在日志中找到报错信息,是和DBMS_SHARED_POOL有关,我这里是只要包体没有包头导致的编译错误,执行下列脚本
SQL >@?/rdbms/admin/dbmspool.sql
SQL >@?/rdbms/admin/prvtpool.plb
3.编译无效对象:
SQL> @?/rdbms/admin/utlrp.sql
4.重新执行datapatch
[oracle@rac1 OPatch]$ ./datapatch -verbose
查看patch应用信息,出现success说明正常:
SQL> select PATCH_ID ,VERSION,STATUS from dba_registry_sqlpatch;
安装p30354375
1.解压
[oracle@rac1 ~]$ unzip p30354375_12201210420DBAPR2021RU_Linux-x86-64.zip
[oracle@rac1 ~]$ mv 30354375/ /u01/app/oracle/product/12.2.0/db_1/OPatch/
[oracle@rac1 ~]$ cd /u01/app/oracle/product/12.2.0/db_1/OPatch/30354375
2.冲突检查
[oracle@rac1 30354375]$ ../opatch prereq CheckConflictAgainstOHWithDetail -ph ./
注意:For a RAC environment, shut down all the services (database, ASM, listeners, nodeapps, and CRS daemons)
3.关闭数据库和CRS
SQL> shutdown immediate;
[root@rac1 bin]# ./crsctl stop crs
4.应用patch和检查
[oracle@rac1 30354375]$ ../opatch apply
[oracle@rac1 OPatch]$ ./opatch lsinventory
5.启动CRS进程和数据库
注意$ORACLE_HOME/bin/oracle 文件权限,又被修改了!!
[root@rac1 bin]# ./crsctl start crs
[oracle@rac1 ~]$ sqlplus / as sysdba
SQL> startup
在第二个节点上重复上述过程,如果觉得不放心,可以在完成后,重启2台服务器,查看是否正常,至此,patch安装完成!
相关推荐
- Linux两种光驱自动挂载的方法
-
环境:CentOS6.4西昆云服务器方式一修改fstab文件/etc/fstab是系统保存文件系统信息?静态文件,每一行描述一个文件系统;系统每次启动会读取此文件信息以确定需要挂载哪些文件系统。参...
- linux系统运维,挂载和分区概念太难?在虚机下操作一次全掌握
-
虚拟机的好处就是可以模拟和学习生产环境的一切操作,假如我们还不熟悉磁盘操作,那先在虚机环境下多操作几次。这次来练习下硬盘扩容操作。虚拟机环境:centos8vm11linux设备命名规则在linux中...
- Linux 挂载 NFS 外部存储 (mount 和 /etc/fstab)
-
mount:手工挂载,下次重启需再重新挂载,操作命令:mount-tnfs-ooptionsserver:/remote/export/local/directory上面命令中,本地目录...
- 在Linux中如何设置自动挂载特定文件系统(示例)
-
Linux...
- Linux环境中的绑定挂载(bind mount)
-
简介:Linux中的mount命令是一个特殊的指令,主要用于挂载文件目录。而绑定挂载(bindmount)命令更为特别。mount的bind选项将第一个目录克隆到第二个。一个目录中的改变将会在...
- Linux挂载CIFS共享 临时挂载 1. 首先
-
如何解决服务器存储空间不足的问题?大家好,欢迎回来。在上一期视频中,我为大家介绍了如何利用Linux挂载来扩容服务器存储空间。这一期视频,我将以Linux为例,教大家如何进行扩容。群辉使用的是Linu...
- Linux 硬盘挂载(服务器重启自动挂载)
-
1、先查看目前机器上有几块硬盘,及已挂载磁盘:fdisk-l能够查看到当前主机上已连接上的磁盘,以及已经分割的磁盘分区。(下面以/dev/vdb磁盘进行分区、挂载为例,挂载点设置为/data)df...
- linux 挂载磁盘
-
在Linux中挂载硬盘的步骤如下:...
- 笨小猪教您Linux磁盘挂载
-
本教程针对Linux系统比较熟悉或者想学习Linux基础的用户朋友,本教程操作起来比较傻瓜式,跟着步骤就会操作,本文使用的工具是XShell同时多多注意空格(文中会有提示)。【问答】什么是磁盘挂载?答...
- Linux 磁盘挂载和docker安装命令
-
本篇给大家介绍Linux磁盘挂载和docker安装的相关内容,Linux服务器的操作是一个手熟的过程,一些不常用的命令隔断时间就忘记了,熟话说好记性不如烂笔头,还需在平时的工作中多练习记录。...
- Linux设置开机自动挂载分区
-
有时候,我们在安装完Linux系统之后,可能在使用过程中添加硬盘或者分区进行使用,这时候就需要手动把磁盘分区挂载到某个路径,但是开机之后就会消失,需要重新挂载,非常麻烦,那么我们应该如何设置开机自动挂...
- 在linux挂载一个新硬盘的完整步骤
-
以下是在Linux中挂载新原始磁盘的完整步骤,包括分区、创建文件系统以及使用UUID在/etc/fstab中启动时挂载磁盘:将新的原始磁盘连接到Linux系统并打开电源。运行以下命令,...
- Linux系统如何挂载exFAT分区
-
简介:Linux系统中不能像Windows系统那样自动识别加载新设备,需要手动识别,手动加载。Linux中一切皆文件。文件通过一个很大的文件树来组织,文件树的根目录是:/,从根目开始录逐级展开。这些文...
- Linux系统挂载硬盘
-
fdisk-l查看可挂载的磁盘都有哪些df-h查看已经挂载的磁盘...
- WSL2发布,如何在Win10中挂载Linux文件系统
-
WSL2是最新版本的架构,它为Windows子系统提供支持,使其能够在Windows上运行ELF64Linux二进制文件。通过最近的更新,它允许使用Linux文件系统访问存储在硬盘中的文件。如果你...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- 关闭防火墙linux (53)