明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

oracle 11.1.0.7版本也会出现access$表失去导致数据库无法打开_Oracle图文说明教程

[摘要]下面我们来看看oracle 11.1.0.7版本也会出现access$表丢失导致数据库无法启动,有需要了解的朋友可以进入看看吧.有网友咨询数据库启动报ora-01092:ORACLE 实例终止。强制...

  下面我们来看看oracle 11.1.0.7版本也会出现access$表丢失导致数据库无法启动,有需要了解的朋友可以进入看看吧.

  有网友咨询数据库启动报ora-01092:ORACLE 实例终止。强制断开连接,请求帮忙处理

  数据库版本

  Trace file d:appadministratordiagrdbmsorclorcltraceorcl_ora_5648.trc

  Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production

  With the Partitioning, OLAP, Data Mining and Real Application Testing options

  Windows NT Version V6.1 Service Pack 1

  CPU : 1 - type 8664, 1 Physical Cores

  Process Affinity : 0x0000000000000000

  Memory (Avail/Total): Ph:7605M/10239M, Ph+PgF:11979M/20477M

  Instance name: orcl

  Redo thread mounted by this instance: 1

  Oracle process number: 18

  Windows thread id: 5648, image: ORACLE.EXE (SHAD)

  open数据库报ORA-01092: ORACLE 实例终止。强制断开连接

  SQL> alter database open;

  alter database open

  *

  第 1 行出现错误:

  ORA-01092: ORACLE 实例终止。强制断开连接

  alert日志

  Thread 1 opened at log sequence 1008

  Current log# 3 seq# 1008 mem# 0: D:APPADMINISTRATORORADATAORCLREDO03.LOG

  Successful open of redo thread 1

  MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set

  SMON: enabling cache recovery

  Errors in file d:appadministratordiagrdbmsorclorcltraceorcl_ora_3964.trc:

  ORA-00704: 引导程序进程失败

  ORA-00604: 递归 SQL 级别 1 出现错误

  ORA-00942: 表或视图不存在

  Error 704 happened during db open, shutting down database

  USER (ospid: 3964): terminating the instance due to error 704

  Instance terminated by USER, pid = 3964

  ORA-1092 signalled during: ALTER DATABASE OPEN...

  ORA-1092 : opiodr aborting process unknown ospid (3384_3964)

  做10046分析日志

  PARSE ERROR #1:len=56 dep=1 uid=0 oct=3 lid=0 tim=1796038335 err=942

  select order#,columns,types from access$ where d_obj#=:1

  *** 2015-01-27 21:24:50.794

  ----- Error Stack Dump -----

  ORA-00604: 递归 SQL 级别 1 出现错误

  ORA-00942: 表或视图不存在

  通过这里可以知道数据库在启动的过程中由于无法访问access$表从而出现ORA-00942错误,又是由于该sql是数据库内部调用因为出现ORA-00604错误.

  出现该错误的原因是由于:BUG:12733463 – ORA-704, ORA-604 AND ORA-942 ON TABLE ACCESS$ DURING STARTUP

  官方提供方法

  1. Shutdown (abort) the instance and clean up any OS structures used by the instance.

  Eg: Ensure there is no shared memory, semaphores etc.. left lying around

  2. Retry the startup.

  3. If the error persists try and recover the database or recover from a backup.

  惜分飞处理方法

  startup upgrade

  create table access$

  ( d_obj# number not null,

  order# number not null,

  columns raw(126),

  types number not null)

  storage (initial 10k next 100k maxextents unlimited pctincrease 0)

  /

  create index i_access1 on

  access$(d_obj#, order#)

  storage (initial 10k next 100k maxextents unlimited pctincrease 0)

 

  /


Microsoft Access在很多地方得到广泛使用,例如小型企业,大公司的部门。