AIX7环境上一次艰难的Oracle打补丁经历

系统环境

AIX :7200-05-03-2148 Oracle:11.2.0.4 PSU: 11.2.0.4.201020(31718723) perl:5.28

alt

问题一:AUTO patch

#/u01/app/11.2.0/grid/OPatch/opatch auto /tmp/31718723 错误信息如下:匹配mos 2516761.1 进行下一步relink操作

alt
alt
alt

出师未捷,做relink,失败。 alt

问题二:手工打补丁失败

执行perl rootcrs.pl -unlock出现报错。

/usr/opt/perl5/lib/5.28.1/aix-thread-multi/POSIX.pm line 185.Unimplemented: POSIX::tmpnam() at crsconfig_lib.pm line 712.BEGIN failed--compilation aborted at crsconfig_lib.pm line 712.Compilation failed in require at ./rootcrs.pl line 305.
alt

根据MOS文档Rootcrs.pl -Unlock Fails With Error Unimplemented: POSIX::tmpnam(): Use File::Temp Instead At /usr/perl5/5.26/lib/sun (文档 ID 2697590.1) 中说明在perl 5.22版本之后tmpnam() interface以及被删除,导致打补丁报错。

MOS解决办法 根据mos的建议,需要安装补丁27212837,不过由于也需要调用perl,也会出现/usr/opt/perl5/lib/5.28.1/aix-thread-multi/POSIX.pm line 185.的报错,出现了一个死循环,那么需要首先解决perl的问题。

Apply patch 27212837
Download Link: https://updates.oracle.com/download/27212837.html
Request for patch if not available for particular platform/release.	

临时解决: 用File::Temp替换qw(tmpnam),包括crsgpnp.pm、crsinstall.pm、crsupgrade.pm、s_crsutils.pm,不过试了后发现crs无法启动。

use File::Temp in the scripts instead of POSIX::tmpnam().
Replace use POSIX qw(tmpnam); with use File::Temp; in all the files, Then re-try
These are the files which have pragma use POSIX qw(tmpnam);
crsgpnp.pm
crsinstall.pm
crsupgrade.pm
s_crsutils.pm

问题三:降级perl版本无效

IBM厂商要来5.10版本的perl尝试手动应用补丁,发现补丁程序并没有使用我们指定的perl版本。 然后我们也尝试用oracle自带的perl,写入环境变量,发现报错一样,也就是环境变量也没生效。 ++注:从小机厂商处了解到perl脚本因依赖比较多,无法直接卸载,也无降级一说。但是不同版本的perl脚本可以共存。没有影响。我们的例子中原本高版本的perl脚本没动。重新装了一个低版本5.10的perl。++

另辟蹊径:

既然环境变量不管用,那就使用oracle自带的perl并且强制写死路径,绕过操作系统的perl。

/u01/app/11.2/grid/perl/bin/perl /u01/app/11.2.0//grid/crs/install/rootcrs.pl -unlock

rootcrs.pl -unlock这一步通过。

问题四:rootcrs.pl -patch报错

在最后一步rootcrs.pl -patch的时候报错install/crsconfig_lib.pm line 11821。

alt

查看install/crsconfig_lib.pm 的11821代码,提示集群启动失败。

ASM没有启动成功,进程状态为Abnormal Termination,CLEANING

ASM的alert日志报错SMR is corrupted. Shut down and restart the instance to recreate it。

alt

显然这是触发了BUG:AIX:11.2.0.4 :ASM&DB Instance Not Starting Up Due to SMR Corrupt After OCT 2020 PSU (文档 ID 2732507.1)

APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.2.0.4 to 11.2.0.4 [Release 11.2]
IBM AIX on POWER Systems (32-bit)
IBM AIX on POWER Systems (64-bit)
SYMPTOMS
The following errors reported in the ASM&DB alert logs while starting the ASM/DB instance after applying the OCT 2020 PSU.ASM alert log:Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Initial number of CPU is 32Autotune of undo retention is turned on.IMODE=BR
ILAT =0
LICENSE_MAX_USERS = 0
SYS auditing is disabled
NOTE: Volume support enabled
Starting up:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Automatic Storage Management option.
ORACLE_HOME = <grid home>
System name: AIX
Node name: <node>
Release: 1
Version: 7
Machine: <Machine ID>
Using parameter settings in server-side spfile +DATA01/asm/asmparameterfile/registry.253.801309187
System parameters with non-default values:
large_pool_size = 12M
instance_type = "asm"
remote_login_passwordfile= "EXCLUSIVE"
asm_diskgroups = "FRA"
asm_diskgroups = "DATA01"
asm_power_limit = 1
diagnostic_dest = "<oracle base>"
Fri Nov 06 00:59:39 2020
WARNING: process PMON (ospid: 27132378) was unable to attach SMR.
SMR is corrupted. Shut down and restart the instance to recreate it.
PMON started with pid=2, OS id=27132378
Fri Nov 06 00:59:39 2020
WARNING: process PSP0 (ospid: 20512830) was unable to attach SMR.
SMR is corrupted. Shut down and restart the instance to recreate it.Instance terminated by USER, pid = 20512820
Fri Nov 06 00:59:39 2020
Instance shutdown complete

在 AIX7 中应用 2020 年 10 月 DBPSU 后,SMR 文件不断损坏导致实例不能正常启动。

BUG 32123313 - SMR FILE KEEPS GETTING CORRUPTED AFTER APPLYING OCT 2020 DBPSU IN AIX7
Bug 32109594 - ASM IS UNABLE TO START WITH SMR CORRUPTED ERROR POST OCT 2020 PSU APPLY

官方建议Download and apply the patch for bug 32109594 to GI/RDBMS homes.

SOLUTION
Download and apply the patch for bug 32109594 to GI/RDBMS homes. In case the patch doesn't exist for your version, contact Oracle Support for the patch.

但是32109594是扩展服务,需要收费,很多客户没有权限下载。

解决办法:

其实有个变通的方法,既然官方说安装OCT 2020 DBPSU IN AIX7有问题,那我们我们尝试下安装上一个psu版本 JUL2020 (11.2.0.4.200714)。

安装成功。

作者介绍:云和恩墨资深Oracle dba,专注于数据库运维、架构和行业发展,有12年左右的金融、保险、政府、地税、运营商等业务关键型系统的运维经验,曾担任公司异常恢复东区接口人,负责紧急异常恢复工作,技术二线专家。目前负责PG、openGauss/MogDB运维、国产化MogDB数据库的推广工作。

本文由 mdnice 多平台发布

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

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

相关文章

C语言读数据+遍历行数程序|Visual studio 2022

读数据遍历行数程序 记录一个度数遍历行数的程序 FILE* file2; int row2 0; file2 fopen("D://sins_mat2.txt", "r"); // file1 fopen("D://ga_mat2.txt", "r"); if (file2 NULL) {printf("open file1 failed.\n");re…

Kafka 3.x.x 入门到精通(05)——对标尚硅谷Kafka教程

Kafka 3.x.x 入门到精通&#xff08;05&#xff09;——对标尚硅谷Kafka教程 2. Kafka基础2.1 集群部署2.2 集群启动2.3 创建主题2.4 生产消息2.5 存储消息2.6 消费消息2.6.1 消费消息的基本步骤2.6.2 消费消息的基本代码2.6.3 消费消息的基本原理2.6.3.1消费者组2.6.3.1.1 消费…

美国洛杉矶站群服务器如何提高网站排名?

美国洛杉矶站群服务器怎么样?美国洛杉矶站群服务器如何提高网站排名?Rak部落小编为您整理发布美国洛杉矶站群服务器如何提高网站排名? 美国洛杉矶站群服务器可以通过以下几种方式帮助提高网站排名&#xff1a; - **提升网站性能**&#xff1a;美国站群服务器通常配备高速CPU…

LLM学习笔记-5

目录 1.多层神经网络的实现2. 训练轮次示例3. 保存并加载模型4. 使用GPU加速训练5. 使用上面所教&#xff0c;进行一次训练 摘要&#xff1a;今天想整理一下Pytorch常用操作&#xff0c;以便以后进行预习&#xff08;不是&#xff09; 1.多层神经网络的实现 这是常用的操作&a…

创建Python环境的方法(附:Anaconda常用命令及常用源)

创建Python环境的方法&#xff08;附&#xff1a;Anaconda常用命令及常用源&#xff09; 一、创建python环境的方法 1. 使用python进行创建环境 创建虚拟环境 python -m venv ENV-NAME # ENV-NAME:表示创建的虚拟环境的名称激活虚拟环境 ENV-NAME\Scripts\activate # E…

Elcomsoft iOS Forensics Toolkit: iPhone/iPad/iPod 设备取证工具包

天津鸿萌科贸发展有限公司是 ElcomSoft 系列取证软件的授权代理商。 Elcomsoft iOS Forensics Toolkit 软件工具包适用于取证工作&#xff0c;对 iPhone、iPad 和 iPod Touch 设备执行完整文件系统和逻辑数据采集。对设备文件系统制作镜像&#xff0c;提取设备机密&#xff08…

阿斯达年代记三强争霸服务器没反应 安装中发生错误的解决方法

阿斯达年代记三强争霸服务器没反应 安装中发生错误的解决方法 最近刚上线的由影视剧改编的游戏《阿斯达年代记三强争霸》可谓是在游戏圈内引起了轩然大波&#xff0c;这是一款由网石集团与龙工作室联合开发的MMORPG游戏&#xff0c;游戏背景设定在一个名为阿斯大陆的区域&…

vue 实现项目进度甘特图

项目需求&#xff1a; 实现以1天、7天、30天为周期&#xff08;周期根据筛选条件选择&#xff09;&#xff0c;展示每个项目不同里程碑任务进度。 项目在Vue-Gantt-chart: 使用Vue做数据控制的Gantt图表基础上进行了改造。 有需要的小伙伴也可以直接引入插件&#xff0c;自己…

用Scrapy编写第一个入门项目(基础四件套:spider,pipeline,setting,items)

简介&#xff1a;scrapy是一个用于爬取网页并提取数据的应用框架&#xff0c;也可用于提取API数据 写在前面&#xff1a;只想看scrapy的童鞋子请跳过5-7直接step8&#xff09; step5&#xff0c;6是xpath和css入门&#xff0c;用于提取数据&#xff1b; step7是文件储存方式&…

国产麒麟系统下打包electron+vue项目(AppImage、deb)

需要用到的一些依赖包、安装包以及更详细的打包方法word以及麒麟官网给出的文档都已放网盘&#xff0c;链接在文章最后&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&a…

后端开发大纲

后端3要素&#xff1a; 后端编程语言&#xff1a;java、python等后端框架&#xff1a;spring、django等&#xff0c;降低构建后端程序的难度包管理工具&#xff1a;maven、pip等&#xff0c;别人把代码打包成包供我们调用 域名&#xff1a;重定向到urlREST风格api&#xff1a;请…

备考数通HCIE证书4点经验分享!

大家好&#xff0c;我是来自安阳工学院20级网络工程的刁同学&#xff0c;在2023年12月20日成功通过了华为Datacom HCIE认证&#xff0c;并且取得了笔试900多分&#xff0c;实验B的成绩。在此&#xff0c;我想把我的一些考证心得分享给正在备考的小伙伴们。 关于为什么考证 我…

使用自定义注解处理器,自动收集类信息

背景 在开发过程有些时候我们会需要收集一些类信息。比如要知道某个子类下的所有实现类。可以通过反射的方式实现。但是这种方法有性能问题&#xff0c;因为在运行时&#xff0c;所有类都会包含在dex文件中。这个文件中的类可能有几十万个。而且在实际开发中会发现&#xff0c…

vue3前端调用后端接口实现分页,搜索

//3个搜索获取数据分页 export function parkEnterPage( address: string, methods: string, carNumber :string, personName:string, cardStatus:string, page: number, pageSize: number ) { const res instance({ url: ${address}?carNumber${carNumber}&p…

ArcGIS专题图制作—3D峡谷地形

6分钟教你在ArcGIS Pro中优雅完成炫酷的美国大峡谷3D地图 6分钟教你在ArcGIS Pro中优雅完成炫酷的美国大峡谷3D地图。 这一期的制图教程将带我们走入美国大峡谷&#xff0c;让我们一起绘制这张美妙的地图吧&#xff01;视频也上传到了B站&#xff0c;小伙伴可以去&#xff01; …

go自编自导自写一片协成池

近段时间&#xff0c;在用go的时候找了许久没有发现go协成池之类的东西&#xff0c;然后自己脑子一热&#xff0c;手撸的一个协成池&#xff0c;希望这个东西可以帮助到&#xff0c;也在go语言中苦苦寻求go协成池的伙伴&#xff0c;有什么想法可以留言到下面 func TestGoPoll(…

Django测试工具 Client

Django测试工具 Client Python3 manage.py shell 1.测试模型中的数据操作 from OverlayList.models import RequestInfo RequestInfo.objects.all() 2.测试URL视图&#xff0c;返回值 $Python3 manage.py shell from django.test.utils import setup_test_environment setu…

数据结构与算法解题-20240426

这里写目录标题 面试题 08.04. 幂集367. 有效的完全平方数192. 统计词频747. 至少是其他数字两倍的最大数718. 最长重复子数组 面试题 08.04. 幂集 中等 幂集。编写一种方法&#xff0c;返回某集合的所有子集。集合中不包含重复的元素。 说明&#xff1a;解集不能包含重复的子…

【网络原理】TCP协议的连接管理机制(三次握手和四次挥手)

系列文章目录 【网络通信基础】网络中的常见基本概念 【网络编程】网络编程中的基本概念及Java实现UDP、TCP客户端服务器程序&#xff08;万字博文&#xff09; 【网络原理】UDP协议的报文结构 及 校验和字段的错误检测机制&#xff08;CRC算法、MD5算法&#xff09; 【网络…

Swift - 流程控制

文章目录 Swift - 流程控制if-else2. while3. for3.1 闭区间运算符3.2 半开区间运算符3.3 for - 区间运算符用在数组上3.3.1 单侧区间 3.4 区间类型3.5 带间隔的区间值 4. switch4.1 fallthrough4.2 switch注意点 5. 复合条件6. 区间匹配、元组匹配7. 值绑定8. where9. 标签语句…