Oracle打补丁后备份报错

Oracle远程备份的时候报错

今天我们通过工具对Oracle数据库进行备份的时候发现备份失败,具体报错如下;

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00601: fatal error in recovery manager
RMAN-03010: fatal error during library cache pre-loading
RMAN-10015: error compiling PL/SQL program
RMAN-10014:PLSQL error 0 on line 11 column 7: Statement ignored
RMAN-10014: PL/SQL error 302 on line 11 column 28: component 'CATALOGBPGETNEXT must be declared

刚开始摸不着头绪,后来发现备份失败的时间点是在我们更新了补丁之后。

之前为了解决公司业务问题,我们给Oracle12C打了此版本最后一个补丁,即:Patch 33583921-Gl Jan 2022 Release Update 12.2.0.1.220118

然后网上查了相关信息发现了问题,在更新补丁之后会造成调用的 rman 程序命令位置错误。

具体措施:

1、切换到 grid 用户,移走 rman 程序。
su - grid
cd $GRID_HOME/bin #未设置环境变量需手动切换绝对路径
mv rman /home/grid
2、再次发起备份任务。

然后报错权限不足,使用ll命令发现grid/bin目录下的rman居然是root权限,这它能执行个鬼,切换root用户移动到/home/grid目录下

再次执行备份任务,备份成功。

参考链接:

  1. 爱数备份
  2. Oracle支持官网(需要账号登陆)
提供的引用内容中未提及在Oracle 12c RAC单节点上打补丁的方法。通常,在Oracle 12c RAC单节点上打补丁可以按以下通用步骤进行: ### 准备工作 - **备份数据**:对数据库进行全量备份,包括数据文件、控制文件、归档日志等,以防止打补丁过程中出现问题导致数据丢失。 - **检查系统状态**:确保数据库和操作系统处于稳定状态,没有正在进行的重要任务。检查磁盘空间是否充足,内存使用情况等。 - **下载补丁**:从Oracle官方支持网站下载所需的补丁包,并将其上传到目标节点的合适目录。 ### 停库操作 - **关闭数据库实例**:使用`shutdown immediate`命令关闭要打补丁的节点上的数据库实例。 ```sql sqlplus / as sysdba shutdown immediate; exit; ``` - **停止集群资源**:停止该节点上的集群资源,例如使用`crsctl`命令。 ```bash crsctl stop resource -all -n <node_name> ``` ### 应用补丁 - **解压补丁包**:在目标节点上解压下载的补丁包。 ```bash unzip <patch_file>.zip -d <patch_directory> ``` - **运行预检查脚本**:进入补丁目录,运行预检查脚本,检查系统是否满足打补丁的条件。 ```bash cd <patch_directory> ./runprepatch.sh ``` - **应用补丁**:使用`opatch`工具应用补丁。 ```bash opatch apply ``` ### 启动操作 - **启动集群资源**:使用`crsctl`命令启动该节点上的集群资源。 ```bash crsctl start resource -all -n <node_name> ``` - **启动数据库实例**:使用`startup`命令启动数据库实例。 ```sql sqlplus / as sysdba startup; exit; ``` ### 验证补丁 - **检查数据库状态**:确保数据库正常运行,没有报错信息。 - **检查补丁应用情况**:使用`opatch lsinventory`命令检查补丁是否成功应用。 ```bash opatch lsinventory ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值