ORACLE startup报错之ORA-01261&&ORA-01263&&ORA-00202&&ORA-00205

    系统环境:windows server 2008R2
   数据库环境:oracle 11.2.0.1
   问题描述:一测试数据库oradb启动时报错ORA-01261&&ORA-00202,报错日志如下:
C:\Users\localadmin>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on 星期二 8月 8 10:12:29 2017
Copyright (c) 1982, 2010, Oracle.  All rights reserved.
已连接到空闲例程。
SQL> startup;
ORA-01261: Parameter db_recovery_file_dest destination string cannot be translated
ORA-01263: Name given for file destination directory is invalid
OSD-04018: ??????????????????????????
O/S-Error: (OS 2) ??????????????????????
SQL> 
   startup报错ORA-01261&&ORA-01263的意思是:当前数据库开启了闪回区,但是当前闪回区参数db_recovery_file_dest设置的目录不存在了:ORA-01263: Name given for file destination directory is invalid
   解决方法很简单,查看启动参数文件pfile(ORACLE_HOME/dbs/initoradb.ora),看db_recovery_file_dest的文件目录配置,查看存储并创建改目录 :
*.aq_tm_processes=0
*.audit_file_dest='C:\oracle\admin\oradb\adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='C:\oracle\oradata\oradb\control01.ctl','C:\oracle\flash_recovery_area\oradb\control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='oradb'
*.db_recovery_file_dest='C:\oracle\flash_recovery_area'
*.db_recovery_file_dest_size=4294967296
*.diagnostic_dest='C:\oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=oradbXDB)'
*.job_queue_processes=0
*.log_archive_format='ARC%S_%R.%T'
*.memory_target=3294625792
*.nls_language='SIMPLIFIED CHINESE'
*.nls_territory='CHINA'
*.open_cursors=300
*.optimizer_use_sql_plan_baselines=TRUE
*.processes=200
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

需要注意的是,还需要在flash_recovery_area目录下创建oradb文件夹,然后从数据文件目录拷贝最新的控制文件到oradb下并重命名为control02.ctl
否则,启动数据库时会报错:
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area 3290345472 bytes
Fixed Size                  2180224 bytes
Variable Size            1979714432 bytes
Database Buffers         1291845632 bytes
Redo Buffers               16605184 bytes
ORA-00205: ?????????, ??????, ???????

告警日志内容:
Tue Aug 08 10:14:41 2017
MMNL started with pid=16, OS id=11856 
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
starting up 1 shared server(s) ...
ORACLE_BASE from environment = C:\oracle
Tue Aug 08 10:14:41 2017
ALTER DATABASE   MOUNT
ORA-00210: ???????????
ORA-00202: ????: ''C:\ORACLE\FLASH_RECOVERY_AREA\ORADB\CONTROL02.CTL''
ORA-27041: ??????
OSD-04002: 无法打开文件
O/S-Error: (OS 3) 系统找不到指定的路径。
ORA-205 signalled during: ALTER DATABASE   MOUNT...
   然后,再次启动数据库能够正常启动:
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area 3290345472 bytes
Fixed Size                  2180224 bytes
Variable Size            1979714432 bytes
Database Buffers         1291845632 bytes
Redo Buffers               16605184 bytes
数据库装载完毕。
数据库已经打开。
SQL>

总结:可能是存储或者人为误删除导致数据库损失闪回区目录,数据库无法启动,需要按照参数文件配置修复存储目录及相应的控制文件即可。

时间: 2024-10-16 19:01:38

ORACLE startup报错之ORA-01261&&ORA-01263&&ORA-00202&&ORA-00205的相关文章

ORACLE startup报错之ORA-01154&&ORA-01155&&ORA-01033&&ORA-03113

    今天,一实施同事求助,说一地市oracle数据库无法通过远程连接,连接报错如图: 操作系统:windows server2008 R2  数据库版本:oracle 11.2.0.1 初看报错貌似数据库正处在打开或关闭的过程中.查看告警日志,最近的一次数据库启动发生在上午10:50,部分告警日志如下: Wed Aug 02 10:51:48 2017 Starting ORACLE instance (normal) LICENSE_MAX_SESSION = 0 LICENSE_SESS

oracle-使用sql server数据库导出至Oracle数据库报错 !

问题描述 使用sql server数据库导出至Oracle数据库报错 ! 求助大神 解决方案 安装64为的oracle试试 解决方案二: 根据提示,你是不是用32bit的客户端用64bit运行了呢. 另外,system.data.oracleclient安装正确么?和你的服务器的版本匹配么?是不是版本过低. 解决方案三: SqlServer2012是64位的,Oracle数据库也是64位的 Oracle客户端是使用的PL/SQL 可能是32位的吧,有没有办法可以使他们版本或系统位数相互兼容的办法

Oracle 11g 报错 ORA-28000 the account is locked

                                                                     Oracle 11g 报错 ORA-28000 the account is locked 一.触发这个错误的原因及相关因素    是由于oracle11g中默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180天"所导致,在Oracle 11g中是 存在密码过期问题的.   二.错误现象:     用户被锁定之后会报OR

javaweb-java工程连接oracle数据库报错,急用,新人,谢谢了

问题描述 java工程连接oracle数据库报错,急用,新人,谢谢了 ORA-01017: invalid username/password; logon denied 用户名密码都对,有时候能登陆上去,有时候连接不上,这是怎么回事 解决方案 错误信息是:无效的用户名或密码,拒绝登陆. 可能你的normal用户的密码已经过期,或者用户权限没有开通,可重新设置一下 用sysdba用户登陆,会获得最高权限,然后便可进行一切操作(添加用户等) 如果还是不会,就百度: 如果回答对您有帮助,请采纳

使用hibernate连接Oracle数据库报错

问题描述 使用hibernate连接Oracle数据库报错 Exception in thread ""main"" org.hibernate.exception.GenericJDBCException: Cannot open connection at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:140) at org

mybatis调用oracle存储过程报错

问题描述 mybatis调用oracle存储过程报错 错误如下 java.sql.SQLException: ORA-06550: 第 1 行, 第 7 列: PLS-00201: 必须声明标识符 'DOINENTITYDATA' ORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored -- 替换或创建存储过程 CREATE OR REPLACE PROCEDURE doInentityData as --声明游标 存储ODS的有效数据 CURSOR

Oracle sql 报错确实右括号

问题描述 Oracle sql 报错确实右括号 select distinct(EAF_R_RIGHTID) from BIM_DMM_R_NAVMODEL where EAF_R_LEFTID in (select t.EAF_ID EAF_ID from BIM_DMM_NAV t where 1=1 and BIM_VIEWID = 'B51CA2C3F36293837D7FEF408A3D8ED2' and BIM_BUILD='D1402C388390D5E46C122C7569770

asp.net访问oracle数据库报错

问题描述 每隔一段时间访问oracle都会报错,除非重启iis就好了-哪位大神知道原因啊--报错如下:System.Data.OleDb.OleDbException(0x80004005):ORA-12154:TNS:couldnotresolveservicenameatSystem.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionStringconstr,OleDbConnectionconnection)atSystem.D

Oracle启动报错 ORA-01078: failure in processing system parameters

报错: 在启动Oracle数据库时报错,如下: [oracle@localhost ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Sat Feb 16 19:43:43 2013 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-01078: failur