ORACLE还原恢复启动时数据库报ORA-00704, ORA-00604, ORA-00904

这篇具有很好参考价值的文章主要介绍了ORACLE还原恢复启动时数据库报ORA-00704, ORA-00604, ORA-00904。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Oracle数据库还原恢复后,执行alter database open resetlogs时遇到下面错误。如下所示:

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-00603ORACLE server session terminated by fatal error
ORA-01092ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-00604error occurred at recursive SQL level 1
ORA-00904"I"."UNUSABLEBEGINNING#": invalid identifier
Process ID19288
Session ID2 Serial number4441

刚开始有点懵的,第一次遇到这种情形。不过搜索了一下metalink相关资料后,大致了解到是因为环境变量设置有误导致这些错误出现的。这里先介绍一下这个案例的复杂背景:

当前机器为一个测试服务器(UAT环境),操作系统版本为HP-UX,数据库版本Oracle 19c,然后因为Support人员要查找历史数据,需要还原一个2020年时间点的数据库备份。但是生产环境(PROD)在2020年是Oracle 11g,然后在2021年升级为了Oracle 19c,现在测试服务器(UAT环境)的数据库版本也是Oracle 19c,于是从其它测试服务器拷贝了一个Oracle 11g版本的挂载带点/opt/oracle11g到当前测试服务器(为了方便省事,如果重新安装搭建Oracle 11g环境还麻烦一些),然后设置了一下/etc/oratab,如下所示:(xxx表示ORACLE_SID)

#xxx:/opt/oracle19c/product/19.3.0/db_1:N
xxx:/opt/oracle11g/product/11.2:N

退出当前SecureCRT窗口,重新登陆,提示修改成功,如下所示

ORACLE_SID = [xxx] ? xxx

Oracle SID  = xxx
Oracle BASE = /opt/oracle11g
Oracle HOME = /opt/oracle11g/product/11.2
SQL*Net TNS = /etc
ORA_NLS10   = /opt/oracle11g/product/11.2/nls/data

由于忙着检查/修改pfile文件中的参数,当时没有仔细检查环境变量,匆匆忙忙就开始了数据库实例的还原恢复,但是当前的ORACLE_HOME环境变量确实还是Oracle 19c的环境变量

>echo $ORACLE_BASE
/opt/oracle19c
>echo $ORACLE_HOME
/opt/oracle19c/product/19.3.0/db_1

修改环境变量~/.profile后,执行. ~/.profile设置生效。然后重新登陆SecureCRT后,重新还原数据库就不会遇到这个问题。另外,如果不重新还原,关闭数据库后,重新OPEN数据库亦可以,测试没有什么问题。

ORACLE还原恢复启动时数据库报ORA-00704, ORA-00604, ORA-00904

官方文档Database Startup Failure After RMAN Restore with ORA-00704, ORA-00604, ORA-00904 (Doc ID 2540757.1)的具体内容如下:文章来源地址https://www.toymoban.com/news/detail-412553.html

APPLIES TO:
Oracle Database - Enterprise Edition - Version 11.2.0.4 and later
Information in this document applies to any platform.

SYMPTOMS
 
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00704: bootstrap process failure
ORA-00604: error occurred at recursive SQL level 2
ORA-00904: "I"."UNUSABLEBEGINNING#": invalid identifier
Process ID: 23346
Session ID: 680 Serial number: 51933

CHANGES

 After restoring the database to another server by RMAN, it is failed to startup.
After upgrade or post upgrade

CAUSE

 >>>>>ORA-00904: "I"."UNUSABLEBEGINNING#": invalid identifier
This error appears due to using the incorrect sqlplus environment. For example., By default SQLPLUS will connect to the default ORACLE_HOME, say 12C Home but if you are duplicating the 11g database on same host the it must be Oracle 11g Environment in order to complete the process.
1 - This issue happens when we have installed multiple Oracle Homes in a single system.
2 - We need to make sure that we are in the right environment when we are restoring it.

SOLUTION

You need to set all the required Environment Variables first as per your need like ORACLE_SID, ORACLE_BASE, ORACLE_HOME, TNS_ADMIN, PATH with proper values
(OR)
Simply work by going to the bin directory of your required ORACLE_HOME
SET ORACLE_HOME=Your_Oracle_Home
CD ORACLE_HOME\bin
Even if you set all the environment parameter properly, then need to investigate further to verify the rman backup set which used to restore or verify the upgrade logs, component, dba_registry etc.
Provide the details requested in below Notes based on the post restore or post upgrade
Note 1905616.1  SRDC - Startup Issues: Checklist of Evidence to Supply (Doc ID 1905616.1)
Note 1906468.1  SRDC - Startup Shutdown - Oracle Binary and OS Resources: Checklist of Evidence to Supply (Doc ID 1906468.1)
Note:1672387.1  SRDC - Data Collection for Upgrade Issues
Note 753041.1 How to Diagnose Components with NON VALID Status in DBA_REGISTRY after an Upgrade (Doc ID 753041.1)
Note 1965956.1  SRDC - Data Collection for Datapatch issues (Doc ID 1965956.1)
Note 1671416.1  SRDC - Required diagnostic data collection for RMAN Restore and Recover Using TFA Collector (Recommended) or Manual Steps (Doc ID 1671416.1)

到了这里,关于ORACLE还原恢复启动时数据库报ORA-00704, ORA-00604, ORA-00904的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SQLServer2008数据库还原失败 恢复失败

    源地址:http://www.taodudu.cc/news/show-1609349.html?action=onClick 还原数据库问题解决方案 在还原数据库“Dsideal_school_db”时,有时会遇见上图中的问题“因为数据库正在使用,所以无法获得对数据库的独占访问权”,此时我们可以按照以下步骤解决此问题 1、右键数据库“Dsideal_schoo

    2024年02月10日
    浏览(37)
  • oracle 连接数据库报错 ORA-12170:TNS 连接超时

    上网尝试了很多方法,网上列举的以下常见方法对于我来说无效,且均正常。 1、先检查网络是否能ping通,下图网络状态是正确的。 2、查看服务器监听服务是否启动 3、cmd -》 tnsping ip地址(或者是服务器的实例名SID)如果报“TNS-12535:操作超时”,可能是服务器端防火墙 没有

    2023年04月12日
    浏览(24)
  • Oracle的PDB数据库创建DIRECTORY时遇到ORA-65254

    在Oracle 19c多租户环境的PDB数据库下面创建一个DIRECTORY时,遇到了“ORA-65254: invalid path specified for the directory”,下面简单演示一下所遇到的这个案例 如上所示,数据库提示,出现这个错误的原因在于创建PDB的语句中指定了PATH_PREFIX参数,创建目录DIRECTORY时只能使用相对路径,而

    2024年02月08日
    浏览(39)
  • Oracle数据库ORA-01507: database not mounted解决方法

    连接上安装好的oracle后,执行SQL报ORA-01507: database not mounted错误,根据百度ORA-01507: database not mounted的解决办法,问题解决了,下面详细介绍一下这个方法: 执行sql命令: shutdown ,并退出sqlplus /oracle/SHP/11204/是本例的oracle的家目录,要根据自身安装目录做修改 语句为 fuser -u l

    2024年02月16日
    浏览(26)
  • 重启Linux服务器 Oracle 数据库步骤 重启数据库startup 报ORA-01031 insufficient privileges错误解决

    在一次重启数据库的时候,没有正确按照步骤重启数据库,导致服务器重启。 正确步骤及详解: (1) su - oracle 打开Xshell,连接到数据库所在的linux机器。若用户为root,请输入命令“su - oracle”并回车,若要密码,输入密码后并回车,就切换到了oracle用户下。 检测方法:“#”变

    2024年02月15日
    浏览(29)
  • 数据库数据恢复-Oracle数据库数据恢复案例

    数据库数据恢复环境: Oracle数据库ASM磁盘组有4块成员盘。 数据库故障分析: Oracle数据库ASM磁盘组掉线 ,ASM实例无法挂载,用户联系我们要求恢复oracle数据库。 数据库数据恢复工程师拿到磁盘后,先将所有磁盘以只读方式进行扇区级别的镜像备份,后续的数据分析和数据恢

    2024年02月13日
    浏览(44)
  • oracle19cPDB数据库连不上,提示ORA-01109: database not open

    今天尝试创建了一个RAC环境的PDB数据库,在本地执行alter pluggable database pdb01 open 成功了,但是使用上去了plus连接还是连接不上,提示错误如下: 依次检查配置: 1.手工启动pdb数据库 2.在Oracle用户下的tnsnames.ora文件添加了监听: 3.重启grid用户下的监听 发现问题依然存在,后来

    2024年02月05日
    浏览(40)
  • Oracle ORA-01033: ORACLE initialization or shutdown in progress(误删了DBF数据库文件导致)解决方法

    先声明一下前期的一些手欠欠儿的操作导致oracl登录不进去了,起先是清理磁盘空间的时候误删除了orcle DBF数据文件后无法进入系统,plsql登录报错如下: 一般情况下,删除表空间的正确方法是: DROP TABLESPACE BDCDJ INCLUDING CONTENTS AND DATAFILES; 如果没有通过以上命令删除而直接删

    2024年02月02日
    浏览(43)
  • 数据库数据恢复-Oracle数据库文件出现坏块的数据恢复案例

    Oracle数据库故障初检分析: 打开Oracle数据库时报错,报错信息:“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。用户急需恢复zxfg用户下的数据。 出现上述报错的可能原因包括:控制文件损坏、数据文件损坏,数据文件与控制文件的SCN不一致等。 北亚企安数据

    2024年02月14日
    浏览(35)
  • Oracle 数据库恢复删除的数据

    需求描述: 同事让删除脏数据,结果删错了,需要恢复数据 思路: 利用闪回恢复数据只能恢复15分钟之内的,后面undo空间会被重写,就恢复不了,所以删除数据后,要谨慎再三确认,若发现不对,则利用闪回恢复 先查询删除时的时间节点的快照 查到时间戳之后 闪回恢复数

    2024年01月24日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包