一次误操作导致的gi psu升级失败

oracle使用opatch auto的方式安装gi psu时需要一个节点一个节点来,昨晚的升级中,因为误操作而是两节点同时安装gi psu,最终在补丁安装完成后,无法拉起crs。

选择进行补丁的rollback,结果悲剧的发现rollback的前提是需要crs启动的状态,无奈之下只能进行备份文件的恢复了。

不过因为意识的疏忽,压缩$oracle_home目录和$grid_home目录时没有使用root用户,导致部分文件没有备份出来。

以后打类似的psu,有两个注意点:

第一,一定要一个节点一个节点打;

第二,一定要用root用户将$grid_home和$oracle_home 以及oraInventory目录压缩打包,一般不会用到它们,但是一旦需要使用,那就是最后的手段了。

以下是部分记录

在23:20时发现节点二在节点一还没有打完gi psu的情况下,开始安装gi psu了,应该是我的误操作导致。

23:40分左右,节点一,节点二依次打完补丁,出现以下提示

Oracle Grid Infrastructure stack start initiated but failed to complete at /tmp/p17735354_112030_Linux-x86-64/17592127/files/crs/install/crsconfig_lib.pm line 11645.

opatch是卡在执行以下脚本时出错rootcrs.pl -patch

启动crs失败,查看相应ohasd日志,发现以下错误,根据该错误找文档

Unable to start OHASD after apply of PSU patch. CLSU-00103: error location: usrgetgrp12 [1562797.1]

Unable to start CRS after applying Grid Infrastructure Patch [1200582.1]

问题类似,建议是使用软件备份来回滚

错误日志

ESOURCES] to : []

2014-06-18 23:43:59.284: [  CRSOCR][1143286080] {0:0:2} Multi Write Batch processing...

2014-06-18 23:43:59.284: [    AGFW][1141184832] {0:0:2} Agfw Proxy Server received the message: CMD_COMPLETED[Proxy] ID 20482:71

2014-06-18 23:43:59.284: [    AGFW][1141184832] {0:0:2} Agfw Proxy Server replying to the message: CMD_COMPLETED[Proxy] ID 20482:71

2014-06-18 23:43:59.286: [UiServer][1153792320] {0:0:4} processMessage called

2014-06-18 23:43:59.286: [UiServer][1153792320] {0:0:4} Sending message to PE. ctx= 0x2aaab00297c0, Client PID: 27058

2014-06-18 23:43:59.286: [UiServer][1153792320] {0:0:4} Sending command to PE: 2

2014-06-18 23:43:59.287: [   CRSPE][1151691072] {0:0:4} Processing PE command id=103. Description: [Stat Resource : 0x2aaaac0ec830]

2014-06-18 23:43:59.287: [   CRSPE][1151691072] {0:0:4} Expression Filter : (((NAME == ora.crsd) OR (NAME == ora.cssd)) OR (NAME ==

ora.evmd))

2014-06-18 23:43:59.289: [UiServer][1153792320] {0:0:4} Done for ctx=0x2aaab00297c0

2014-06-18 23:43:59.297: [UiServer][1155893568] Closed: remote end failed/disc.

2014-06-18 23:43:59.400: [  CRSOCR][1143286080] {0:0:2} Multi Write Batch done.

2014-06-18 23:43:59.400: [   CRSPE][1151691072] {0:0:2} Resource Autostart completed for gdgz-ps-tszc-db04-x3950

2014-06-18 23:43:59.455: [UiServer][1155893568] CS(0x2aaab002ba70)set Properties ( root,0x7f43170)

2014-06-18 23:43:59.455: [UiServer][1155893568] SS(0x7ebdc60)Accepted client connection: saddr =(ADDRESS=(PROTOCOL=ipc)(DEV=639)(KEY

=OHASD_UI_SOCKET))daddr = (ADDRESS=(PROTOCOL=ipc)(KEY=OHASD_UI_SOCKET))

2014-06-18 23:43:59.466: [UiServer][1153792320] {0:0:5} processMessage called

1点10分开始通过软件备份还原,1点四十,节点一软件正常,节点二响应缓慢

节点一启动时出现以下问题

startup

ORA-01078: failure in processing system parameters

ORA-01565: error in identifying file ‘+DATA/oltp/spfileoltp.ora‘

ORA-17503: ksfdopn:2 failed to open file +DATA/oltp/spfileoltp.ora

ORA-12547: TNS: lost contact

ORA-12537 / ORA-12547 or TNS-12518 if Listener (including SCAN Listener) and Database are Owned by Different OS User (文档 ID 1069517.1)

通过以上文档,定位是$GRID_HOME/bin/oracle的权限不对

正常的是-rwsr-s--x,而该库上面是-rwxr-x--x

chmod 6751 oracle 通过该命令修改权限后成功启动

三点半时候,应用那边尝试连接,发现两个问题

ora-03113,和ora-12516

这边将节点一重启后,发现起不来了

相应ohasd日志如下:

2014-06-19 04:41:40.708: [ default][616989264] OHASD Daemon Starting. Command string :restart

2014-06-19 04:41:40.713: [ default][616989264] Initializing OLR

2014-06-19 04:41:40.714: [  OCROSD][616989264]utopen:6m‘: failed in stat OCR file/disk /oracle/app/11.2.0.3/grid/cdata/gdgz-ps-tszc-

db03-x3950.olr, errno=2, os err string=No such file or directory

2014-06-19 04:41:40.714: [  OCROSD][616989264]utopen:7: failed to open any OCR file/disk, errno=2, os err string=No such file or dir

ectory

2014-06-19 04:41:40.714: [  OCRRAW][616989264]proprinit: Could not open raw device

2014-06-19 04:41:40.714: [  OCRAPI][616989264]a_init:16!: Backend init unsuccessful : [26]

2014-06-19 04:41:40.714: [  CRSOCR][616989264] OCR context init failure.  Error: PROCL-26: Error while accessing the physical storag

e Operating System error [No such file or directory] [2]

2014-06-19 04:41:40.715: [ default][616989264] Created alert : (:OHAS00106:) :  OLR initialization failed, error: PROCL-26: Error wh

ile accessing the physical storage Operating System error [No such file or directory] [2]

2014-06-19 04:41:40.715: [ default][616989264][PANIC] OHASD exiting; Could not init OLR

2014-06-19 04:41:40.715: [ default][616989264] Done

四点半的时候节点二软件恢复完全,但是出现相同错误

2014-06-19 04:00:22.064

[ohasd(28201)]CRS-0704:Oracle High Availability Service aborted due to Oracle Local Registry error [PROCL-26: Error while accessing

the physical storage Operating System error [No such file or directory] [2]]. Details at (:OHAS00106:) in /oracle/app/11.2.0.3/grid/

log/gdgz-ps-tszc-db04-x3950/ohasd/ohasd.log.

发现是因为丢失olr文件导致该情况发生

因为该文件是root权限,所以当初没有备份成功

庆幸的是,节点二的旧目录重命名了,但是还存在。从节点二的旧软件目录中拿出该文件,放在相应目录,节点二启动成功

同时把该文件复制到节点一相应目录,修改名字后节点一也启动成功

之后有发现应用依然无法连接

如上述,将$ORACLE_HOME/bin/oracle的权限修改后重启数据库正常

这次故障给了我很大的感慨,搞db的必须要有那种泰山崩于前而面不改色的心态,两点到四点这段时间,我多数处于脑子空白状态,不知道自己干了啥,很有可能节点一上本来存在的ocr就是在这段时间被我删除,从而导致节点一重启报错的。

路漫漫其修远兮,和那些中高级相比,我只能是初级只能那么点工资不是没有道理的。

加油

一次误操作导致的gi psu升级失败

时间: 2024-10-04 11:02:27

一次误操作导致的gi psu升级失败的相关文章

MySQL5.7下面,误操作导致的drop table db1.tb1; 的恢复方法:

MySQL5.7下面,误操作导致的drop table db1.tb1; 的恢复方法: 0.停业务数据写入.[iptables封禁] 1.从备份服务器上拉取最新的一个全备文件,恢复到一个临时的服务器上,解压并启动mysqld. 2.在这台新的slave上执行如下命令: 2.1 先配置好复制关系, change master to 到当前误操作的服务器,但是不要启动复制进程.[类似如下命令] >CHANGE MASTER TO  MASTER_HOST='172.16.20.73', MASTER

SQL SERVER 还原误操作导致还原无法停止,处理办法

昨天遇到运行库不知道单位哪个小伙子,把数据库还原了,导致单位业务全部瘫痪,主数据库一直显示正在还原,真的是不敢动,经过多方寻找,找到此脚本-------------------------数据库还原日志,导致数据库一直在正在还原状态,运行此脚本有一定的几率可以恢复RESTORE database YXHIS_BAK(库名) with recovery RESTORE database YXHIS_BAK(库名) with norecovery 原文地址:https://www.cnblogs.c

Oracle 11g RAC自动打GI PSU补丁(11.2.0.4.8)

一.准备工作 1,数据库环境 操作系统版本   : Redhat 6.5 x64   数据库版本     : Oracle 11.2.0.4 x64 RAC    Grid           : 11.2.0.4     Oracle database: 11.2.0.4 本文出自:http://koumm.blog.51cto.com/ 2,准备内容 GI PSU : p21523375_112040_Linux-x86-64.zip    OPatch : p6880880_112000_

请列出你在从事IT生涯中,最难以忘怀的一次误操作

IT系统最怕什么,我觉得就两点: 1.不可靠的软硬件. 2.误操作. 第一点就不用解释了,第二点是该文的内容,主要摘选自ITPUB的精华贴——[精华] 请列出你在从事DBA生涯中,最难以忘怀的一次误操作 中摘录各位网友的经验和教训,常看看以警惕自己. #2 一次一个session占用内存很大,这个session id比较大,所以以为是用户进程,kill, 则库立刻down了,查日志后,才知道是一个后台进程,但详细是哪个进程,现在忘记了. 好的是库起来了,这个故障,我一直牢记于心. 现在做任何操作

SCPPO:SQL误操作如何恢复?

[前言] 今天研究项目中自己有疑惑的一块儿内容应该是这个系统的核心-数据从上传的Access中解析出来(ETL的贡献)经过一系列的存储过程将数据放到数据库表中(每天凌晨都会定时的执行这一系列操作)这只是今天的引子,不具体深入的讲解下去,小编会在接下来的博文中更加深入的为大家分享: 在分析这块儿的时候无意在服务器上发现一款软件-ApexSQL Log:之前没接触过出于好奇就去网上查了一下它是干嘛用的,这一查不要紧,又燃起了自己新的兴趣,仿佛一切的一切上天冥冥之中自有安排!为何这么说?小编下面为大家

一次误操作引起的linux系统网络故障

1.故障描述 接到用户报障,生产某系统无法访问.同事接到报障后立即排查,经测试,系统确实无法访问,并且无法ping通服务器. 2.故障处理 由于客户端无法ping通服务器,需要进入机房查看.经查看,服务器硬件无报警,系统无重启.登录系统使用ifconfig命令查看,IP丢失(eth0不存在),紧接打开网卡配置目录/etc/sysconfig/network-scripts,发现网卡文件ifcfg-eth0丢失,只存在之前备份的ifcfg-eth0.bak文件和ifcfg-peth0文件.根据先抢

硬盘出现损坏后,大家需要避免哪些误操作

硬盘无法访问或拷贝数据频繁死机? 硬盘进水或烧毁通电后不转或旋转几秒后停转?硬盘跌落或挤压变形发出“咔咔咔”异响?当遇到以上问题的时候,你的硬盘很可能已经损坏了.硬盘损坏后操作不当往往造成数据的永久性丢失.最安全有效的方法是寻求专业数据恢复中心的帮助.比如上海的朋友, 一定要及时咨询上海天盾数据恢复中心,一家专业做数据恢复,拥有领先国内的硬盘开盘技术以及全天咨询售后服务.为提高开盘成功率,大家需要避免以下误操作: 1.反复重启:人都有侥幸心理,当电脑无法开机.硬盘无法识别时,大多数人都会反复重启

rm-rf 误操作的恢复过程

很多DBA一定对rm -rf深恶痛绝吧,没准哪天自己一个犯迷糊就把数据库给消灭了,然后,就没有然后了--那万一--真的发生了这样的不幸,是否真的就无药可救了吗?未必,还是有解决方法的,也许某天当你不幸遇到,就可以用来救自己了.这里做恢复操作的前提是没有可用的rman备份,或者数据库冷备份等,也就是说,没有任何备份. 一.登陆SQLPLUS,并启动数据库 [[email protected] ~]$ sqlplus / as sysdba SQL*Plus: Release 10.2.0.1.0

Git误操作 git reset强制回滚 恢复commit方法

参考: 找回Git中丢失的Commit Git误操作 git reset强制回滚 恢复commit方法 使用Git时,常有误操作,在Commit之后又执行了git reset --hard HEAD强制回滚本地记录以及文件到服务器版本,导致本地做的修改全部恢复到Git当前分支的服务器版本,同时Commmit记录也消失了. 此时解决方法是通过git reflog来查看先前记录并恢复: git reflog会记录所有HEAD的历史,也就是说当你做 reset,checkout等操作的时候,这些操作会