Oracle 8.1
SM2000
После аварийного выключения (умер БП) не стартует база. Бэкап - только весенний, спасибо администратору СМ.
Сервисы OracleServiceDBNAME, OracleDEFAULT_2000TNSListener, OracleDEFAULT_2000DataGatherer, Сервер Супермага, Кассовый сервер, Почтовый сервер стартуют нормально.
При попытке войти в базу обычным способом (через Супермаг) получаю сообщение ORA-03113: end-of-file on communication channel.
При попытке коннекта через DBA Studio не происходит ничего. Окно с именем-паролем остается висеть. При нажатии Cancel - выходит. При этом в Oradim.log пишет ORA-12638: Credential retrieval failed.
При попытке подключения через SqlPlus результат следующий
SET NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
SET ORACLE_SID=DBNAME
sqlplus /nolog
SQL*Plus: Release 8.1.6.0.0 - Production on Thu Oct 1 12:38:53 2009
(c) Copyright 1999 Oracle Corporation. All rights reserved.
SQL> connect sys/qqq as sysdba
ERROR:
ORA-12571: TNS packet writer failure
Сделал полную копию Ora81, Oradata, Admin при остановленных сервисах. Рестарт машины дал следующее в DbNAMEalrt.log
Dump file d:\Oracle\admin\DBNAME\bdump\DBNAMEALRT.LOG
Thu Oct 01 12:37:20 2009
ORACLE V8.1.6.3.0 - Production vsnsta=0
vsnsql=e vsnxtr=3
Windows 2000 Version 5.2 Service Pack 2, CPU type 586
Starting up ORACLE RDBMS Version: 8.1.6.3.0.
System parameters with non-default values:
processes = 150
shared_pool_size = 157286400
large_pool_size = 614400
java_pool_size = 32768
db_file_direct_io_count = 128
control_files = d:\Oracle\oradata\DBNAME\control02.ctl, d:\Oracle\oradata\DBNAME\control03.ctl, d:\Oracle\oradata\DBNAME\control01.ctl
db_block_buffers = 65536
db_block_size = 8192
compatible = 8.1.0
log_archive_start = TRUE
log_archive_dest_1 = LOCATION=D:\ORACLE\RDBMS
log_buffer = 10158080
log_checkpoint_interval = 10000
log_checkpoint_timeout = 1800
db_files = 1024
db_file_multiblock_read_count= 16
max_enabled_roles = 30
remote_login_passwordfile= EXCLUSIVE
global_names = TRUE
distributed_transactions = 10
instance_name = DBNAME
service_names = DBNAME
sort_area_size = 4096000
sort_area_retained_size = 4096000
db_name = DBNAME
open_cursors = 100
os_authent_prefix =
job_queue_processes = 3
job_queue_interval = 60
parallel_max_servers = 5
background_dump_dest = d:\Oracle\admin\DBNAME\bdump
user_dump_dest = d:\Oracle\admin\DBNAME\udump
max_dump_file_size = 10240
oracle_trace_collection_name=
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
SNP0 started with pid=8
SNP1 started with pid=9
SNP2 started with pid=10
Thu Oct 01 12:37:23 2009
ARCH: STARTING ARCH PROCESSES
ARC0 started with pid=11
Thu Oct 01 12:37:23 2009
ARCH: STARTING ARCH PROCESSES COMPLETE
Thu Oct 01 12:37:23 2009
ARC0: Archival started
Thu Oct 01 12:37:23 2009
alter database mount exclusive
Thu Oct 01 12:37:28 2009
Successful mount of redo thread 1, with mount id 3021814472.
Thu Oct 01 12:37:28 2009
Database mounted in Exclusive Mode.
Completed: alter database mount exclusive
Thu Oct 01 12:37:28 2009
alter database open
Thu Oct 01 12:37:28 2009
Rolling back half complete log switch of thread 1
***
Corrupt block relative dba: 0x0000005f file=0. blocknum=95.
Bad header found during controlfile block read
Data in bad block - type:255. format:255. rdba:0xffffffff
last change scn:0xffff.ffffffff seq:0xff flg:0xff
consistancy value in tail 0xffffffff
check value in block header: 0xffff, calculated check value: 0x0
spare1:0xff, spare2:0xff, spare2:0xffff
LGWR: terminating instance due to error 227
Instance terminated by LGWR, pid = 28284
Прошу помочь советом, заранее благодарен. Как DBA работаю в основном с SQl. C Oracle столкнулся вынужденно и отступать некуда.