[ОТВЕТИТЬ]
22.10.2007 10:29
kamres
 
БД не в режиме archivelog

Архивов нет.

Ругается на битый блок ORA-01578: ORACLE data block corrupted (file # 1, block # 498)

Как его реанимировать или обойти?


Mon Oct 22 10:21:07 2007
Starting ORACLE instance (normal)
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.1.0.
System parameters with non-default values:
processes = 150
timed_statistics = TRUE
shared_pool_size = 159383552
large_pool_size = 8388608
java_pool_size = 0
control_files = d:\oracle\oradata\KAMAVTO\control01.ctl, d:\oracle\oradata\KAMAVTO\control02.ctl, d:\oracle\oradata\KAMAVTO\control03.ctl
db_block_size = 8192
db_cache_size = 629145600
compatible = 9.2.0.0.0
log_buffer = 104857600
db_file_multiblock_read_count= 16
fast_start_mttr_target = 300
_allow_resetlogs_corruption= TRUE
transactions_per_rollback_segment= 1
undo_management = AUTO
undo_tablespace = UNDOTBS1
undo_retention = 10800
O7_DICTIONARY_ACCESSIBILITY= TRUE
remote_login_passwordfile= EXCLUSIVE
db_domain =
instance_name = KAMAVTO
job_queue_processes = 5
hash_join_enabled = TRUE
background_dump_dest = d:\oracle\admin\KAMAVTO\bdump
user_dump_dest = d:\oracle\admin\KAMAVTO\udump
core_dump_dest = d:\oracle\admin\KAMAVTO\cdump
sort_area_size = 4194304
db_name = KAMAVTO
open_cursors = 300
star_transformation_enabled= FALSE
parallel_automatic_tuning= TRUE
query_rewrite_enabled = FALSE
pga_aggregate_target = 209715200
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
Mon Oct 22 10:21:09 2007
/* OracleOEM */ ALTER DATABASE MOUNT
Mon Oct 22 10:21:13 2007
Successful mount of redo thread 1, with mount id 25331413.
Mon Oct 22 10:21:13 2007
Database mounted in Exclusive Mode.
Completed: /* OracleOEM */ ALTER DATABASE MOUNT
Mon Oct 22 10:22:22 2007
/* OracleOEM */ ALTER DATABASE OPEN
Mon Oct 22 10:22:22 2007
Beginning crash recovery of 1 threads
Mon Oct 22 10:22:22 2007
Started first pass scan
Mon Oct 22 10:22:22 2007
Completed first pass scan
31 redo blocks read, 7 data blocks need recovery
Mon Oct 22 10:22:22 2007
Started recovery at
Thread 1: logseq 28, block 3, scn 0.0
Recovery of Online Redo Log: Thread 1 Group 2 Seq 28 Reading mem 0
Mem# 0 errs 0: D:\ORACLE\ORADATA\KAMAVTO\REDO02.LOG
Mon Oct 22 10:22:23 2007
Ended recovery at
Thread 1: logseq 28, block 34, scn 0.52774905
7 data blocks read, 7 data blocks written, 31 redo blocks read
Crash recovery completed successfully
Mon Oct 22 10:22:23 2007
Thread 1 advanced to log sequence 29
Thread 1 opened at log sequence 29
Current log# 1 seq# 29 mem# 0: D:\ORACLE\ORADATA\KAMAVTO\REDO01.LOG
Successful open of redo thread 1.
Mon Oct 22 10:22:23 2007
SMON: enabling cache recovery
Mon Oct 22 10:22:23 2007
Undo Segment 1 Onlined
Successfully onlined Undo Tablespace 1.
Mon Oct 22 10:22:23 2007
SMON: enabling tx recovery
Mon Oct 22 10:22:23 2007
Database Characterset is CL8MSWIN1251
Updating 9.2.0.7.0 NLS parameters in sys.props$
-- adding 9.2.0.1.0 NLS parameters.
Mon Oct 22 10:22:23 2007
SMON: about to recover undo segment 2
SMON: mark undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: mark undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: mark undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: mark undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: mark undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: mark undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: mark undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: mark undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: mark undo segment 10 as needs recovery
Undo Segment 1 Onlined
Mon Oct 22 10:22:24 2007
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Undo Segment 1 Onlined
Mon Oct 22 10:22:25 2007
SMON: about to recover undo segment 2
SMON: mark undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: mark undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: mark undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: mark undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: mark undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: mark undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: mark undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: mark undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: mark undo segment 10 as needs recovery
Mon Oct 22 10:22:25 2007
Errors in file d:\oracle\admin\kamavto\udump\kamavto_ora_3296.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-01578: ORACLE data block corrupted (file # 1, block # 498)
ORA-01110: data file 1: 'D:\ORACLE\ORADATA\KAMAVTO\SYSTEM01.DBF'

Mon Oct 22 10:22:25 2007
Error 604 happened during db open, shutting down database
USER: terminating instance due to error 604
Instance terminated by USER, pid = 3296
ORA-1092 signalled during: /* OracleOEM */ ALTER DATABASE OPEN ...
22.10.2007 11:40
akonev
 
явно сложнее случай. system навернулся

тут что пишет:
Цитата:
kamres Errors in file d:\oracle\admin\kamavto\udump\kamavto_ora_3296.trc
?
22.10.2007 11:44
kamres
 
Dump file d:\oracle\admin\kamavto\udump\kamavto_ora_3296.trc
Fri Oct 19 20:35:20 2007
ORACLE V9.2.0.1.0 - Production vsnsta=0
vsnsql=12 vsnxtr=3
Windows 2000 Version 5.1 Service Pack 2, CPU type 586
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
Windows 2000 Version 5.1 Service Pack 2, CPU type 586
Instance name: kamavto

Redo thread mounted by this instance: 1

Oracle process number: 10

Windows thread id: 2332, image: ORACLE.EXE


*** SESSION ID:(8.3) 2007-10-19 20:35:20.000
----- Redo read statistics for thread 1 -----
Read rate (ASYNC) = 12Kb/sec => 25 blocks in 1s
Read buffer = 8192Kb (16384 blocks)
Longest record = 0Kb
Record moves = 0/31 (0%)
----------------------------------------------
*** 2007-10-19 20:35:20.000
KCRA: start recovery claims for 5 data blocks
*** 2007-10-19 20:35:20.000
KCRA: buffers claimed = 5/5, eliminated = 0
ORA-00604: error occurred at recursive SQL level 1
ORA-01578: ORACLE data block corrupted (file # 1, block # 498)
ORA-01110: data file 1: 'D:\ORACLE\ORADATA\KAMAVTO\SYSTEM01.DBF'
22.10.2007 11:49
kamres
 
База только монтируется, но не открывается.
22.10.2007 13:02
baggio
 
я бы порекомендовал бы экспорт\импорт если дает его сделать...
дает?
22.10.2007 13:13
kamres
 
При попытке экспорта ошибка, в логах ее нет.
Миниатюры
Нажмите на изображение для увеличения
Название: При попытке экспорта2.JPG
Просмотров: 353
Размер:	14.3 Кб
ID:	140  
22.10.2007 13:15
OlegON
 
Если путь с REDO-логами, описанный где-то тут на форуме не подойдет - восстанавливайся из бекапа.
22.10.2007 13:56
kamres
 
Бэкап затерли при восстановлении образа винды.

Про REDO- логи попробую.
23.10.2007 14:43
kamres
 
Базу восстановил немного другим способом, данные есть все, но ругается теперь на битый блок в file #6, block 98692, block 436 и block 10431 как их исправить?

При подключении через СМ2000, при открытии кассовых чеков за 09.10.07 ругается на блок 10431 - он не нужен чеки можно восстановить с кассы, как его удалить?

При открытии контрагентов получается ошибка "Объект возможно был удален из базы" хотя их названия присутствуют, наверно они находятся в каком-то из блоков 98692 или 436, и при открытии структуры магазина/склада вообще нет ничего, но такая же структура магазина/слада есть в новой базе, как сделать импорт из новой базы?

Еще появились новые пути к datafiles D:\ORACLE\ORA92\DATABASE\MISSING00003 tablespase DRSYS (Size(M)=0), но раньше файл DRSYS01.DBF находился D:\oracle\oradata\KAMAVTO\DRSYS01.DBF, и D:\ORACLE\ORA92\DATABASE\MISSING00007 tablespase XDB (Size(M)=0), раньше D:\oracle\oradata\KAMAVTO\XDB01.DBF, размеры у них 20МБ и 45МБ соответственно. Что находится в этих файлах?
23.10.2007 16:10
Shiba
 
Сделать экспорт импорт программой Олегона?
23.10.2007 16:32
Mtirt
 
Цитата:
Shiba Сделать экспорт импорт программой Олегона?
Скорее всего не поможет.

Если это сеть, то можно выгрузить утилитой exp только таблицу Контрагентов из другой базы. Ну и импортировать заново. Должно помочь.
Аналогично с остальными таблицами.
Если не сеть - сделать аналогично с любым имеющимся бэкапом.
23.10.2007 17:03
OlegON
 
Каким именно способом восстанавливали базу? Надо прогнать validate по всем объектам (оптимайзер может), после чего оценивать размер разрушений. Если там половины таблиц нет или smdocuments убитая, то никакого смысла восстанавливать базу нет.
23.10.2007 18:03
kamres
 
Не сеть, бэкапа нет, есть только новая база.

Восстановление базы:

Заменил SYSTEM01 из новой рабочей базы, пересоздал контрол файлы, далее ALTER DATABASE RECOVER; написал media recovery complete; Через Enterprise Manager Console увидел invalid объекты, запустил оптимайзер /optimize, после чего через Enterprise Manager Console все invalid стали valid.
Как делается экспорт/импорт, можно по подробнее, не разу не делал и не представляю как.

За ранее спасибо.
23.10.2007 18:06
kamres
 
И что делать с файлами XDB01.DBF, DRSYS01.DBF?
23.10.2007 18:13
Mtirt
 
Экспорт/импорт делать не из чего... :(
Нет ни копии базы, ни базы похожей, по наполнению справочников...
23.10.2007 18:26
kamres
 
В новой базе уже заведены справочники и она нормально функционирует.
Как из неё сделать экспорт/импорт или в неё из восстановленной базы?
23.10.2007 18:31
Mtirt
 
Цитата:
kamres В новой базе уже заведены справочники и она нормально функционирует.
Как из неё сделать экспорт/импорт или в неё из восстановленной базы?
Сколько записей в справочнике Контрагентов в старой базе? В новой?
Вы уверены, что все справочники заведены с теми же кодами? Если их вручную заводили?
23.10.2007 18:40
kamres
 
ID формируются автоматом, ИНН теже, что и были.
Где посмотреть сколько записей в справочнике?
23.10.2007 18:41
kamres
 
Визуально их видно и ID и названия, а при обращении к ним, пишет их в базе нет.
23.10.2007 18:55
Mtirt
 
Цитата:
kamres ID формируются автоматом, ИНН теже, что и были.
Где посмотреть сколько записей в справочнике?

Вот именно, автоматом. Неизвестно, что и в каком порядке набивали в новой базе.

Экспорт/импорт тут точно не поможет.
23.10.2007 19:02
kamres
 
Т.е. необходимо восстанавливать USERS01.DBF?

Подскажите пожалуйста как пользоваться оптимайзером, а то запускаю его, он отрабатывает и лог в таком виде:

"—Џ‹Ш*ЁШХШієААНАЛНхтwXR]ШPWXZS]UPQШ\SШЇ‘–њ—"

Хотелось бы узнать что в нем?
23.10.2007 21:02
YuraZ
 
Цитата:
kamres Т.е. необходимо восстанавливать USERS01.DBF?

Подскажите пожалуйста как пользоваться оптимайзером, а то запускаю его, он отрабатывает и лог в таком виде:

"—Џ‹Ш*ЁШХШієААНАЛНхтwXR]ШPWXZS]UPQШ\SШЇ‘–њ—"

Хотелось бы узнать что в нем?
Запусти оптимайзер с ключем /h и внимательно прочти описание ключей командной строки.
24.10.2007 03:20
isi
 
Для восстановления БД я бы попробовал обратиться к кому нибудь более разбирающемуся в БД Oracle (без обид), иначе результат мне кажется будет ни каким....Только базу добъете
24.10.2007 06:57
Mtirt
 
Да насколько я поняла из написанного выше, не надо ему уже ничего запускать.
База у него живая и работает. Лишние файлики появились - ну и пусть, в них данные есть, причем нормальные.
Есть поврежденные блоки - информацию из них уже не восстановишь (нет бэкапа).

Осталось понять, что еще автору нужно.
24.10.2007 07:04
stalker
 
Цитата:
Mtirt Да насколько я поняла из написанного выше, не надо ему уже ничего запускать.
База у него живая и работает. Лишние файлики появились - ну и пусть, в них данные есть, причем нормальные.
Есть поврежденные блоки - информацию из них уже не восстановишь (нет бэкапа).

Осталось понять, что еще автору нужно.
мне нужно переименовать базу из существуещего бакапа рабочей базы
24.10.2007 09:00
kadr
 
Цитата:
stalker мне нужно переименовать базу из существуещего бакапа рабочей базы
ты автор топика?
24.10.2007 09:09
kamres
 
Цитата:
isi Для восстановления БД я бы попробовал обратиться к кому нибудь более разбирающемуся в БД Oracle (без обид), иначе результат мне кажется будет ни каким....Только базу добъете
Возил базу вместе с сервером в Сервис Плюс там спецы сказали, что база мертвая и восстановлению не подлежит, делайте ревизию.
24.10.2007 09:21
isi
 
Раз так сказали... хотя как мне кажется из вышеописанного в данном случае возможно было повозиться руками, почти все я думаю восстановить можно было... Удачи, и все таки бэкапы очень полезная штука, не пренебрегай на будущее
24.10.2007 09:24
kamres
 
Цитата:
Mtirt Да насколько я поняла из написанного выше, не надо ему уже ничего запускать.
База у него живая и работает. Лишние файлики появились - ну и пусть, в них данные есть, причем нормальные.
Есть поврежденные блоки - информацию из них уже не восстановишь (нет бэкапа).

Осталось понять, что еще автору нужно.
Мне необходимо импортировать таблицу SUPERMAG.SMDEPOTS в файл USERS01.DBF, т.к. при обращении к ней пишет, что битый блок 436, таблицу я удалил через PL/SQL Developer, пытаюсь её импортировать но не получается.

Еще нужно узнать, что находилось в блоке 98692.


Опции темы


Часовой пояс GMT +3, время: 09:30.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.