powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как поднять базу из двух наборов файлов?
8 сообщений из 8, страница 1 из 1
как поднять базу из двух наборов файлов?
    #32169009
whois
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, возможно ли поднять базу из двух наборов файлов? Ситуация после частичного "умирания" винчестера сейчас такова:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SVRMGR> STARTUP PFILE='E:\Oracle\admin\MyDB\pfile\init.ora' OPEN MyDB
Экземпляр ORACLE запущен.
Всего байтов System Global Area                          24690636 
Fixed Size                                           65484  байтов
Variable Size                                      7774208  байтов
Database Buffers                                  16777216  байтов
Redo Buffers                                         73728  байтов
База данных смонтирована.
ORA- 00604 : ?????? ?? ??????????? SQL-??????  1 
ORA- 01578 : ???????? ???? ?????? ORACLE (???? #  1 , ???? #  52 )
ORA- 01110 : ???? ??????  1 : 'E:\ORACLE\ORADATA\MyDB\SYSTEM01.DBF'

В то же время есть полностью рабочая холодная копия базы на конец пятницы. Дело в том, что в субботу были изменения, которые очень желательно было бы восстановить. В табличном пространстве SYSTEM ничего не менялось, изменения только в данных (и, соответственно, в индексах). Если просто подложить старый SYSTEM01.DBF, то

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
SVRMGR> STARTUP PFILE='E:\Oracle\admin\MyDB\pfile\init.ora' OPEN MyDB
Экземпляр ORACLE запущен.
Всего байтов System Global Area                          24690636 
Fixed Size                                           65484  байтов
Variable Size                                      7774208  байтов
Database Buffers                                  16777216  байтов
Redo Buffers                                         73728  байтов
База данных смонтирована.
ORA- 01113 : ??? ?????  1  ????????? ?????????????? ????????
ORA- 01110 : ???? ??????  1 : 'E:\ORACLE\ORADATA\MyDB\SYSTEM01.DBF'

— т.е. "An attempt was made to open a datafile that is in need of media recovery".

В логе:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
archiving is disabled
Starting up ORACLE RDBMS Version:  8 . 1 . 5 . 0 . 0 .
System parameters with non-default values:
  processes                =  50 
  shared_pool_size         =  5728640 
  java_pool_size           = 1000K
  control_files            = E:\Oracle\oradata\MyDB\control01.ctl, E:\Oracle\oradata\MyDB\control02.ctl
  db_block_buffers         =  2048 
  db_block_size            =  8192 
  compatible               =  8 . 1 . 0 
  log_buffer               =  32768 
  log_checkpoint_interval  =  10000 
  log_checkpoint_timeout   =  1800 
  db_files                 =  1024 
  db_file_multiblock_read_count=  8 
  remote_login_passwordfile= NONE
  global_names             = TRUE
  distributed_transactions =  10 
  service_names            = MyDB
  instance_name            = MyDB
  audit_trail              = TRUE
  sort_area_size           =  66560 
  db_name                  = MyDB
  os_authent_prefix        = 
  parallel_max_servers     =  5 
  background_dump_dest     = E:\Oracle\admin\MyDB\bdump
  user_dump_dest           = E:\Oracle\admin\MyDB\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 
Mon May  26   19 : 32 : 06   2003 
alter database MyDB mount
Mon May  26   19 : 32 : 11   2003 
Successful mount of redo thread  1 , with mount id  221457339 .
Mon May  26   19 : 32 : 11   2003 
Database mounted in Exclusive Mode.
Completed: alter database MyDB mount
Mon May  26   19 : 32 : 11   2003 
alter database open 
ORA- 1113  signalled during: alter database open ...


Как видно — "archiving is disabled". Можно ли сейчас что-нибудь сделать или только лишь полностью откатываться назад?
Oracle 8.1.5 PE
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32169184
Roman_M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>В табличном пространстве SYSTEM ничего не менялось, изменения только в данных (и, соответственно, в индексах).

Там на самом деле тоже менялось. Информация о изменениях количества экстентов, к примеру. Да и просто номер чекпоинта в заголовке... То есть подсовывать файл из бэкапа - некорректно. Т.к. БД noarchivelog то восстановление возможно только если _все_ изменения после бэкапа (пятница вечер) уместились в online redo logs. Иначе - только брать все из бэкапа.
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32171143
whois
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и имел ввиду, что в SYSTEM "целенаправленных" изменений не было, не изменялось ничего кроме данных. а поподробнее можно — по поводу online redo logs, как из них восстановиться? я то уже от безысходности поднял всё из бэкапа, но данные то все равно хотелось бы восстановить
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32171190
Roman_M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сначала проверьте, есть ли у Вас бэкап, хотя бы старый. Чтобы ничего не испортить окончательно.

Далее -
Вытащите из бэкапа system.dbf (на остановленной БД) и попробуйте БД открыть командой startup. Выдаст ошибку. Попробовать команду
RECOVER DATABASE

Если эта команда затребует logseq которого у Вас уже нет (это можно проверить выборкой select sequence# from v$log), то значит ничего не получится.... Вообще работать в noarchivelog - это неправильно, только себе проблемы создавать...
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32171276
whois
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эксперименты свои я провожу на другой машине, так что опасности что-либо запороть сейчас нет ))

ну а как же " То есть подсовывать файл из бэкапа - некорректно. "? я же выкладывал результаты замены SYSTEM01.DBF копией. уже разные варианты пробовал - и system.bdf из бэкапа подкладывал, и - наоборот - файлы табличных пространств данных и индексов вместо таковых в бэкапе + recover database, recover tablespace в различных вариациях. например со старым файлом system01.dbf:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SVRMGR> RECOVER database until cancel
ORA- 00279 : ?????????  9076240 , ???????????????  05 / 26 / 03   19 : 14 : 18 , ?????????? ???
 1 
ORA- 00289 : ??????????? : E:\ORACLE\ORA81\RDBMS\ARC07947. 001 
ORA- 00280 : ?????????  9076240  ??? ??????  1  ? ?????????????????? # 7947 
 Укажите журнал: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA- 01547 : ??????????????: ?????????????? ?????? ???????, ?????? ??????? OPEN RE
SETLOGS ????? ??????? ??????
ORA- 01152 : ????  2  ?? ??? ???????????? ?? ??????? ?????????? ?????? ?????
ORA- 01110 : ???? ??????  2 : 'E:\ORACLE\ORADATA\MyDB\RBS01.DBF'
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32171445
Roman_M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Корректно брать отдельный файл из старого бэкапа в том случае, если работает archivelog. Судя по приведенныи листингам, обьем модификаций был таков, что LGWR прошел по всем группам и затер требуемую для восстановления. То есть ничего не получится. Восстанавливаем все иэ бэкапа (с потерей изменений)... Использовать вариант с транспортируемыми табл.пространствами тоже видимо не удасться - поврежден-то system, откуда берутся метаданные...
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32171454
Roman_M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А вот кстати, в качестве бреда и соломинки, за которую можно ухватиться - никто случаем не пробовал такой вариант - выполнить экспорт метаданных на старой бд, поднятой из бэкапа, а в новую уже подсунуть файлы после изменений??? Понятно, что вероятнее всего это не пройдет, но все таки?
...
Рейтинг: 0 / 0
как поднять базу из двух наборов файлов?
    #32172099
whois
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да у меня, честно говоря, сильные сомнения появились, что файлы самих данных не повреждены.. в принципе, запустились уже вроде как, затихло всё. и на том спасибо ))
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как поднять базу из двух наборов файлов?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]