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目录下
再次执行备份任务,备份成功。
参考链接: