博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle单机Rman笔记[6]---记一次oracle脱机异地还原
阅读量:5247 次
发布时间:2019-06-14

本文共 3616 字,大约阅读时间需要 12 分钟。

系统情况介绍

正式环境:windows 2008 r2-32bit/ Oracle: Release 11.2.0.1.0

目标环境:windows 2012 Standard-64bit / Oracle: Release 11.2.0.1.0
备份工具:EMC Avamar 7.5.1-RMAM全备

备份介绍

Avamar自动配置RMAN脚本,全备数据库,自动脚本日志内容如下(图形界面配置的,自动生成如下脚本,也可以手工写脚本备份):

1> RMAN> @@ORCL-24081.tmp2> connect target *;3> **文件结尾**4> run {5> configure controlfile autobackup on;6> set controlfile autobackup format for device type sbt to 'CONTROLFILE.ORCL.%F';7> allocate channel c0 type sbt PARMS="SBT_LIBRARY=C:\PROGRA~1\avs\bin\LIBOBK~1.DLL" format '%d_%U';8> send  channel 'c0' '"--libport=55154" "--force-expires" "--ctlusessl=false" "--cacheprefix=ORCL_c0" "--sysdir=C:\Program Files\avs\etc" "--bindir=C:\Program Files\avs\bin" "--vardir=C:\Program Files\avs\var\clientlogs" "--logfile=C:\Program Files\avs\var\clientlogs\yongyouLV0-yongyouLV0-1553436000010-3002-OracleORCL-avtar0.log" "--ctlcallport=55152"';9> backup filesperset = 1   incremental level = 0 database plus archivelog delete input;10> }11>

还原过程

采用了Avamar恢复数据库的方式,实际上也是RMAN脚本,按照要求使用dbca命令建立好相同实例名称等,并备份相关控制文件(此步骤在Linux上可以手工建立)开始还原。其中需要注意的问题包含了恢复段的SCN号。开始没注意,导致完报错如下:

归档日志文件名=E:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2019_03_21\O1_MF_1_29360_G97XBTPZ_.ARC 线程=1 序列=29360通道 default: 正在删除归档日志归档日志文件名=E:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2019_03_21\O1_MF_1_29360_G97XBTPZ_.ARC RECID=8674 STAMP=1003498474无法找到归档日志归档日志线程=1 序列=29361释放的通道: c0RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-03002: recover 命令 (在 03/21/2019 13:34:38 上) 失败RMAN-06054: 介质恢复正在请求未知的线程 1 序列 29361 的归档日志以及起始 SCN 983751610

再次使用SCN号参数恢复后,Avamar中显示恢复正常,但使用rman target / nocatalog 访问恢复后的数据库时,突然发现数据库无法启动,报错如下:

RMAN-00571: ====================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ========RMAN-00571: ====================================================RMAN-00554: 内部恢复管理器程序包初始化失败RMAN-04005: 目标数据库中存在错误:ORA-12432: LBAC 错误: zllesesinit:OCIStmtExecute

使用 sqlplus / as sysdba可以登陆数据库,但无法执行SQL语句,报错如下:

ORA-01012: not logged on

问题解决过程

在网上找了下相同情况的问题,其中在oracle官网找到了类似问题,如下图:

426583-20190325093235067-2093455528.png

同时其他网站上大部分给出的解决方式为:

--Oracle给出的解决方案--To solve this situation the LBAC option has to be disabled:Step 1  cd $ORACLE_HOME/rdbms/lib  make -f ins_rdbms.mk lbac_off ioracle-- Author   : Robinson Cheng-- Blog     : http://blog.csdn.net/robinson_0612-- DB Forum : http://bbs.dbsupport.cnStep 2$ sqlplus "/ as sysdba"SQL> startup migrateSQL> @?/rdbms/admin/catnools.sqlSQL> shutdown immediateSQL> startupSQL> select * from v$version where rownum<2;

但由于此次的环境为windows,尝试了使用step2的方式还是不行,又在网上找了下,发现别人的一片文章,链接如下:。其中根据作者所述:

426583-20190325094537214-272856922.png

给了我解决思路。于是我采用此方式。sqlplus / as sysdba后先abort数据库,在尝试使用Step2的步骤

SQL>shutdown abortSQL> startup migrate

此时数据库竟然起来了,继续执行Step2的步骤

SQL> @?/rdbms/admin/catnools.sql

发生报错ORA-06553: PLS-801: 内部错误 [56327]。尝试解决如下:

SQL>shutdown abortSQL> startup upgradeSQL> @?/rdbms/admin/utlirpSQL> shutdown immediate

此时,又发生了报错ORA-12432: LBAC 错误: zllesesinit:OCIStmtExecute。继续尝试执行:

SQL>shutdown abortSQL> startup upgradeSQL> @?/rdbms/admin/utlrp

此后在此步骤一直卡住不动了,尝试开启了新的窗口,重新执行:

SQL> shutdown abortSQL> startup migrateSQL> @?/rdbms/admin/catnools.sql

此时数据库竟然没报错,再次使用以下命令后,数据库正常启动。

SQL> shutdown immediateSQL> startupSQL> select * from v$version where rownum<2;

问题总结

实际上本次迁移主要遇到的问题是:

  • ORA-01012: not logged on
  • ORA-12432: LBAC 错误: zllesesinit:OCIStmtExecute
    但是在处理这两个问题时发生了ORA-06553: PLS-801: 内部错误 [56327]的报错。在解决此报错时,没有办法按照正常的流程执行完所有的SQL只能分次多次执行。但最终来看运气还是比较好,妥善的解决了两个报错。最终数据库正常加载启动。

转载于:https://www.cnblogs.com/GYoungBean/p/10591930.html

你可能感兴趣的文章
cisa备考体会
查看>>
timus1004 最小环()Floyd 算法
查看>>
数据结构05之高级排序
查看>>
python 字典实现类似c的switch case
查看>>
面试问题总结
查看>>
ubuntu qq
查看>>
redis 常用命令
查看>>
【转载】C#常用数据库Sqlserver通过SQL语句查询数据库以及表的大小
查看>>
_kbhit() for linux
查看>>
Mayor's posters POJ - 2528
查看>>
决策树--信息增益,信息增益比,Geni指数的理解
查看>>
常用sql备份
查看>>
Solr源码在MyEclipse下的搭建
查看>>
Oracle用户管理的不完全恢复2:基于取消的恢复
查看>>
Oracle 11g 执行计划管理2
查看>>
stm32 nucleo系列开发板的接口
查看>>
02-CSS基础与进阶-day6_2018-09-05-21-42-09
查看>>
JQuery 多选按钮checkbox
查看>>
PHP 语法(5)
查看>>
java反射简解
查看>>