不能打开数据库的一次处理 ORA-01092: ORACLE instance terminated. Disconnection forced

今天有人说数据库挂了,请我帮忙看一下。是9i的库,测试环境的。

启动报错如下:

[oracle@xxx oracle]$ sqlplus "/as sysdba"

SQL*Plus: Release 9.2.0.4.0 - Production on Thu Jan 12 03:54:18 2012

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area  303109300 bytes
Fixed Size                   451764 bytes
Variable Size             268435456 bytes
Database Buffers           33554432 bytes
Redo Buffers                 667648 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced


SQL>

 

先看一下日志文件。

Thu Jan 12 04:40:58 2012
Starting ORACLE instance (normal)
Thu Jan 12 04:40:58 2012
WARNING: EINVAL creating segment of size 0x0000000013400000
fix shm parameters in /etc/system or equivalent
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
SCN scheme 2
Using log_archive_dest parameter default value
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 9.2.0.4.0.
System parameters with non-default values:
  processes                = 150
  timed_statistics         = TRUE
  shared_pool_size         = 117440512
  large_pool_size          = 16777216
  java_pool_size           = 117440512
  control_files            = /opt/oracle/product/9.2.0/oradata/testdb/control01.ctl, /opt/oracle/product/9.2.0/oradata/testdb/control02.ctl, /opt/oracle/product/9.2.0/oradata/testdb/control03.ctl
  db_block_size            = 8192
  db_cache_size            = 33554432
  compatible               = 9.2.0.0.0
  log_archive_start        = TRUE
  log_archive_dest_1       = LOCATION=/opt/oracle/product/9.2.0/oradata/testdb/archive
  log_archive_format       = %t_%s.dbf
  db_file_multiblock_read_count= 16
  fast_start_mttr_target   = 300
  undo_management          = AUTO
  undo_tablespace          = UNDOTBS2
  undo_retention           = 10800
  remote_login_passwordfile= EXCLUSIVE
  db_domain                = webex.com
  instance_name            = testdb
  dispatchers              = (PROTOCOL=TCP)
  job_queue_processes      = 10
  hash_join_enabled        = TRUE
  background_dump_dest     = /opt/oracle/product/9.2.0/admin/testdb/bdump
  user_dump_dest           = /opt/oracle/product/9.2.0/admin/testdb/udump
  core_dump_dest           = /opt/oracle/product/9.2.0/admin/testdb/cdump
  sort_area_size           = 524288
  db_name                  = testdb
  open_cursors             = 300
  star_transformation_enabled= FALSE
  query_rewrite_enabled    = FALSE
  pga_aggregate_target     = 25165824
  aq_tm_processes          = 1
PMON started with pid=2
DBW0 started with pid=3
LGWR started with pid=4
CKPT started with pid=5
SMON started with pid=6
RECO started with pid=7
CJQ0 started with pid=8
QMN0 started with pid=9
Thu Jan 12 04:40:58 2012
starting up 1 shared server(s) ...
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
ARCH: STARTING ARCH PROCESSES
ARC0 started with pid=12
ARC0: Archival started
ARC1 started with pid=13
Thu Jan 12 04:40:59 2012
ARC1: Archival started
Thu Jan 12 04:40:59 2012
ARCH: STARTING ARCH PROCESSES COMPLETE
ARC1: Thread not mounted
Thu Jan 12 04:40:59 2012
ARC0: Thread not mounted
Thu Jan 12 04:40:59 2012
ALTER DATABASE   MOUNT
Thu Jan 12 04:41:03 2012
Successful mount of redo thread 1, with mount id 3969289179.
Thu Jan 12 04:41:03 2012
Database mounted in Exclusive Mode.
Completed: ALTER DATABASE   MOUNT
Thu Jan 12 04:41:03 2012
ALTER DATABASE OPEN
Thu Jan 12 04:41:03 2012
Beginning crash recovery of 1 threads
Thu Jan 12 04:41:03 2012
Started first pass scan
Thu Jan 12 04:41:03 2012
Completed first pass scan
 57 redo blocks read, 4 data blocks need recovery
Thu Jan 12 04:41:03 2012
Started recovery at
 Thread 1: logseq 94, block 2, scn 2612.28455232
Recovery of Online Redo Log: Thread 1 Group 3 Seq 94 Reading mem 0
  Mem# 0 errs 0: /opt/oracle/product/9.2.0/oradata/testdb/redo03.log
Thu Jan 12 04:41:03 2012
Completed redo application
Thu Jan 12 04:41:03 2012
Ended recovery at
 Thread 1: logseq 94, block 59, scn 2612.28475290
 4 data blocks read, 4 data blocks written, 57 redo blocks read
Crash recovery completed successfully
Thu Jan 12 04:41:03 2012
Thread 1 advanced to log sequence 95
Thread 1 opened at log sequence 95
  Current log# 1 seq# 95 mem# 0: /opt/oracle/product/9.2.0/oradata/testdb/redo01.log
Successful open of redo thread 1.
Thu Jan 12 04:41:03 2012
SMON: enabling cache recovery
Thu Jan 12 04:41:03 2012
ARC0: Media recovery disabled
Thu Jan 12 04:41:03 2012
Undo Segment 4 Onlined
Undo Segment 5 Onlined
Undo Segment 6 Onlined
Undo Segment 7 Onlined
Undo Segment 8 Onlined
Undo Segment 9 Onlined
Undo Segment 10 Onlined
Undo Segment 11 Onlined
Undo Segment 12 Onlined
Thu Jan 12 04:41:03 2012
Errors in file /opt/oracle/product/9.2.0/admin/testdb/udump/testdb_ora_4247.trc:
ORA-00600: internal error code, arguments: [kcbgcur_6], [41], [], [], [], [], [], []
Thu Jan 12 04:41:04 2012
Errors in file /opt/oracle/product/9.2.0/admin/testdb/udump/testdb_ora_4247.trc:
ORA-00600: internal error code, arguments: [kcbgcur_6], [41], [], [], [], [], [], []
Error 600 happened during db open, shutting down database
USER: terminating instance due to error 600
Instance terminated by USER, pid = 4247
ORA-1092 signalled during: ALTER DATABASE OPEN...

提示是open的时候出错了。

这个600的错误,还真不好找。网上看了一下,也没有找到什么。以前记得有个分析600的几个类型的,当时没有保存,可惜啊。不过有个文章提到类似的错误,是undo引起的,不是600。 先试试。 URL:

http://blog.csdn.net/pengle/article/details/1448576

 

先mount起来:

startup mount

 

看了一下,当前用的是UNDOTBS2, 系统里面还有UNDOTBS3,那就替换试一下了。

SQL> show parameter undo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     10800
undo_suppress_errors                 boolean     FALSE
undo_tablespace                      string      UNDOTBS2
SQL>
SQL> select name from v$tablespace;

NAME
------------------------------
CWMLITE
DRSYS
EXAMPLE
INDX
ODM
SYSTEM
TOOLS
TEMP2
USERS
XDB
UNDOTBS3

PERFSTAT
UNDOTBS2

SQL> create pfile='/opt/oracle/product/9.2.0/admin/testdb/pfile/inittestdb_20120112.ora' from spfile;

File created.

SQL>

SQL> shutdown
ORA-01109: database not open


Database dismounted.
ORACLE instance shut down.
SQL>

编辑文件,启动

SQL> startup pfile='/opt/oracle/product/9.2.0/admin/testdb/pfile/inittestdb_20120112.ora';
ORACLE instance started.

Total System Global Area  303109300 bytes
Fixed Size                   451764 bytes
Variable Size             268435456 bytes
Database Buffers           33554432 bytes
Redo Buffers                 667648 bytes
Database mounted.
Database opened.
SQL> show parameter undo

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
undo_management                      string      AUTO
undo_retention                       integer     10800
undo_suppress_errors                 boolean     FALSE
undo_tablespace                      string      UNDOTBS3
SQL>
SQL> create spfile from pfile='/opt/oracle/product/9.2.0/admin/testdb/pfile/inittestdb_20120112.ora';

File created.

SQL>

 

 

 

 

 

你可能感兴趣的:(thread,oracle,数据库,database,Parameters,archive)