Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
У меня два вопроса.. можно?

1 - все линки, что приводят тут опытные ДБА (например в топике Если пропал текущий redo-log) я обязан знать наизусть? или же допускается подглядывание в доку???
Очень актуально - ибо я наизусть не знаю = запоминается только то, что часто делаешь (например проверка бэкапа на валидность, путем восстанавливания из него базы на тест-сервере)

2 - делаю ту же проверку как пользуюсь
RECOVER DATABASE  USING BACKUP CONTROLFILE
и никак не пойму ведь
1 - база останавливается
2 - копируются датафайлы из бэкапа + контролфайл
3 - стартап маунт +
RECOVER DATABASE  USING BACKUP CONTROLFILE
и!!! постоянно Оракл требует архлог следующий за последним на данный момент времени
Например - база жива, последний архлог имеет номер 1125
и, бэкап просит начальный архлог с номером к примеру 1050..... и все последующие... но в самом конце он просит еще несуществующий архлог, и, приходится реально делать
RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
ВОПРОС - почему ж он просит несозданный еще архлог?
4 авг 07, 22:11    [4480174]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
!-------!
Guest
потому что вы захотели полного восстановления. С until cancel - неполное
4 авг 07, 22:14    [4480179]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
pravednik
Member

Откуда: Jacksonville, FL
Сообщений: 16268
еще неопытный но ДБА
У меня два вопроса.. можно?

1 - все линки, что приводят тут опытные ДБА (например в топике Если пропал текущий redo-log) я обязан знать наизусть? или же допускается подглядывание в доку???
Очень актуально - ибо я наизусть не знаю = запоминается только то, что часто делаешь (например проверка бэкапа на валидность, путем восстанавливания из него базы на тест-сервере)



Как Вы думаете, если у вас база упадет, то Ваш начальник не даст Вам в доку посмотреть, если вы что то не вспомните.....этож не школа...здесь за подглядывания 2 не поставят.:))
зы: я не опытный ДБА :)
4 авг 07, 22:17    [4480183]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
juks@gala.net
Member

Откуда: Киев
Сообщений: 4212
Когда база упадет некогда будет доку смотреть
5 авг 07, 00:54    [4480370]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 18351
еще неопытный но ДБА
я обязан знать наизусть? или же допускается подглядывание в доку???

Желательно, конечно, не просто вызубрить, но еще и понимать что что происходит и почему происходит именно так.
Однако если обслуживаемая Вами БД допускает сутки простоя без существенного ущерба для бизнеса - то единственное, что Вы обязаны заучить наизусть - надо делать резервные копии ПЕРЕД тем, как приступать к упражнениям в области recovery.

еще неопытный но ДБА
RECOVER DATABASE  USING BACKUP CONTROLFILE
ВОПРОС - почему ж он просит несозданный еще архлог?

Потому что "using backup control file" подразумевает использование резервной копии control file, которая по понятным причинам не содержит и не может содержать номер последнего файла журнала. Делайте recover until cancel или используйте для восстановления свежую копию управляющего файла..
5 авг 07, 02:39    [4480396]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
andrey_anonymous

еще неопытный но ДБА
RECOVER DATABASE  USING BACKUP CONTROLFILE
ВОПРОС - почему ж он просит несозданный еще архлог?

Потому что "using backup control file" подразумевает использование резервной копии control file, которая по понятным причинам не содержит и не может содержать номер последнего файла журнала. Делайте recover until cancel или используйте для восстановления свежую копию управляющего файла..


Но ведь когда я восстанавливаю базу из своего бэкапа
я копирую поверх старых не только датафайлы, но и контролфайл, который в том же бэкапе и в то же время сделан!!!

!-------!

потому что вы захотели полного восстановления. С until cancel - неполное


как=то не так...
RECOVER DATABASE  USING BACKUP CONTROLFILE
просит несуществующий архлог

RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE
дабы не морочить себе голову нажимая энтер на каждый архлог - даю ему АВТО и... тоже после обработки последнего на данный момент архлога - просит несуществующий...

juks@gala.net
Когда база упадет некогда будет доку смотреть

хм.... почитав данный форум, даже от Вас нашел вопросы, которые Вы тут опубликовали, то есть Вам дали время на "полистать доку + еще и тут, на форуме спросить", так зачем же Вы меня, неопытного пугаете?
5 авг 07, 10:17    [4480453]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
andrey_anonymous
еще неопытный но ДБА
я обязан знать наизусть? или же допускается подглядывание в доку???

Желательно, конечно, не просто вызубрить, но еще и понимать что что происходит и почему происходит именно так.
Однако если обслуживаемая Вами БД допускает сутки простоя без существенного ущерба для бизнеса - то единственное, что Вы обязаны заучить наизусть - надо делать резервные копии ПЕРЕД тем, как приступать к упражнениям в области recovery.


Спасибо!
Я вообще-то не имел в виду зазубрить, ведь в любом случае сутки простоя - вряд ли кто позволит, но, чтобы не было такого простоя - просто регулярно делаю бэкапы, и лежат эти бэкапы разумеется не рядом с самой базой.....
ИМХО при таком подходе (да уже неоднократно же тут поднимался вопрос) ни о каком простое речи не будет...
полистав данный форум по вопросам восстановления заметил интересную тенденцию..
в 99% вопрос звучит так : "помогите упала база - архлогов нету.. бэкап последний за прошлый год...."
Как ни крути - но это вина не железа, которое допустим отказало == исключительно человеческий, нет "ПсевдоДБА-шный" фактор..
разве нет?
5 авг 07, 10:23    [4480459]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 18351
еще неопытный но ДБА
andrey_anonymous

еще неопытный но ДБА
RECOVER DATABASE  USING BACKUP CONTROLFILE
ВОПРОС - почему ж он просит несозданный еще архлог?

Потому что "using backup control file" подразумевает использование резервной копии control file, которая по понятным причинам не содержит и не может содержать номер последнего файла журнала.

Но ведь когда я восстанавливаю базу из своего бэкапа
я копирую поверх старых не только датафайлы, но и контролфайл, который в том же бэкапе и в то же время сделан!!!

В том-то и дело. Архивный управляющий файл сделан "в то" время. А последний журнал записан, грубо говоря, неделю спустя.
Откуда сервер может знать что происходило с базой после того момента, как был создан резервный управляющий файл? Из архивных журналов.
А сколько этих журналов создано с момента создания резервной копии управляющего файла?
Об этом знал актуальный управляющий файл, который не задействован в процессе восстановления, поскольку Вы используете "using backup controlfile".
Поэтому сервер и не может остановиться - он банально не знает, который из журналов - последний.
Попробуйте для разнообразия восстановиться со свежей копией управляющего файла без указания "using backup controlfile" - почувствуйте разницу.
Заодно увидите, что можно открываться без resetlogs :)
5 авг 07, 11:35    [4480499]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 18351
еще неопытный но ДБА
Я вообще-то не имел в виду зазубрить, ведь в любом случае сутки простоя - вряд ли кто позволит, но, чтобы не было такого простоя - просто регулярно делаю бэкапы, и лежат эти бэкапы разумеется не рядом с самой базой.....

Осталось оценить время, требуемое для:
1) Анализа ситуации и принятия решения о необходимости восстановления с резервной копии
2) Поиска backup, распаковки и копирования файлов
3) Наката журналов
4) В Вашем случае - для немедленного создания новой резервной копии (открыте с resetlogs)
Вот тогда и поймете кто что "позволит" или "не позволит"
Обратите внимание, что только копирование файлов данных серьезных БД - процесс многочасовой, накат журналов - тоже.
Поэтому очень и очень многое зависит от квалификации DBA, его способности поставить правильный диагноз и предпринять именно те действия, которые вернут базу в работу в кратчайшие сроки.
Я намеренно опустил всяческие standby, RAC, dataguard чтобы проиллюстрировать потенциальные проблемы, связанные с соблюдением SLA при восстановлении с резервной копии.
5 авг 07, 11:44    [4480507]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
Nuri
Member

Откуда: Архангельск
Сообщений: 625
andrey_anonymous

Я намеренно опустил всяческие standby, RAC, dataguard чтобы проиллюстрировать потенциальные проблемы, связанные с соблюдением SLA при восстановлении с резервной копии.

Оффтоп, сорри.
На днях тут на собственном опыте убедились, что стендбай рулит неимоверно. У праймари сдох системный винт. Потеряли время, пытаясь реанимировать винду, а зря, надо было сразу активировать стендбай. Потом плюнули и переехали.
5 авг 07, 12:39    [4480567]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
andrey_anonymous
еще неопытный но ДБА
andrey_anonymous

еще неопытный но ДБА
RECOVER DATABASE  USING BACKUP CONTROLFILE
ВОПРОС - почему ж он просит несозданный еще архлог?

Потому что "using backup control file" подразумевает использование резервной копии control file, которая по понятным причинам не содержит и не может содержать номер последнего файла журнала.

Но ведь когда я восстанавливаю базу из своего бэкапа
я копирую поверх старых не только датафайлы, но и контролфайл, который в том же бэкапе и в то же время сделан!!!

В том-то и дело. Архивный управляющий файл сделан "в то" время. А последний журнал записан, грубо говоря, неделю спустя.
Откуда сервер может знать что происходило с базой после того момента, как был создан резервный управляющий файл? Из архивных журналов.
А сколько этих журналов создано с момента создания резервной копии управляющего файла?
Об этом знал актуальный управляющий файл, который не задействован в процессе восстановления, поскольку Вы используете "using backup controlfile".
Поэтому сервер и не может остановиться - он банально не знает, который из журналов - последний.
Попробуйте для разнообразия восстановиться со свежей копией управляющего файла без указания "using backup controlfile" - почувствуйте разницу.
Заодно увидите, что можно открываться без resetlogs :)


погодите погодите
в юэкапе есть
1 - контролфайл сделанный командой
backup controlfile to '...\MyControl.ctl'
2 - копии датафайлов

для тестового восстановления я, при остановленной базе удаляю ВСЕ!! кроме инит=файла и пайлапаролей
- копирую из бэкапа все датафайлы + контролфайл
Если пробую сделать просто Recover database
получаю настоятельный совет Оракла - что мол надо с use backup controlfile делать, а иначе не восстанавливает (согласен - вероятно я чего-то недочитал), но, как только даю ему рэкавер с контролфайла - все восстанавливается и нет проблем..
правда открыть приходится с ресетлогс
Просит несуществующий архлог ну и фиг с ним
даю ему повротную команду
recover database using backup controlfile until cancel
cancel
atler database open resetlogs

и все неа момент последнего архлога база восстановлена....
все же наверное я чего-то недочитал, но, так как описанным мною способом база всегда восстанавливается - я успокоился....

Если что не так - ткните носом плиз! :-)

А, что касается вопроса о скорости восстановления - конечно - если бы в моем случае это было критично - был бы сделан стэндбай сервер.....
5 авг 07, 13:00    [4480598]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
да еще одно - долго думал - почему же постоянно требуется восстановление с использованием бэкап контролфайла..
пришел к выводу
1- е тестовое восстановление шло так
- остановили базу - скопировали на ее место все файлы из холодной копии - восстановили...
но потом на реальной базе добавлялить редулоги и мультиплексировались они же.. соответственно контролфайл кардинально изменился... а холодную копию после этого никто не делал... руки не долши блин..
но! подумал я, а надо ли обязательно в случае изменения структуры контролфайла делать холодную копию - пишут что надо, но ведь, подставив только датафайлы и контрол - реду логи пересоздались при восстановлении...
видимо именно поэтому никакое восстановление окромя как с использованием контролфайла в моем случае недоступно.
по крайней мере пока не сделаю холодный бэкап и не поставлю все файлы с него на тестовый сервер, где провожу восстановление.
Ибо ни
recover database
recover database untill time
e vtyz yt ghj[jlbn///
только с использованием бэкап контролфайла...
самое время разобраться почему, скажете Вы..
но, к стиыду своему я решил - раз так восстанавливается - то и хорошо..
может я и заблуждаюсь, но наличие бэкапов, кои делаются каждую 2-ю ночь + копии архлогов позволяют мне спать спокойно....
Ну, я так полагаю...
5 авг 07, 13:10    [4480615]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
.....
Guest
еще неопытный но ДБА
.....


Успокойся, все нормально. Самое главное с бакапов можно восстановиться :)
5 авг 07, 14:16    [4480707]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
juks@gala.net
Member

Откуда: Киев
Сообщений: 4212
еще неопытный но ДБА
juks@gala.net
Когда база упадет некогда будет доку смотреть

хм.... почитав данный форум, даже от Вас нашел вопросы, которые Вы тут опубликовали, то есть Вам дали время на "полистать доку + еще и тут, на форуме спросить", так зачем же Вы меня, неопытного пугаете?

Я вас не пугаю. Йа так думаю )
Будет мало времени и небольшой стресс.
Читать,вникать и пробовать что написаное
документации лучше в спокойной обстановке.

Надо понимать что происходит.
Надо хоть раз отработать каждый способ восстановления.
5 авг 07, 15:43    [4480868]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
еще неопытный но ДБА
Guest
juks@gala.net

Я вас не пугаю. Йа так думаю )
Будет мало времени и небольшой стресс.
Читать,вникать и пробовать что написаное
документации лучше в спокойной обстановке.


несомненно так

juks@gala.net

Надо понимать что происходит.
Надо хоть раз отработать каждый способ восстановления.


чем и должен заниматься ДБА, а что же еще ему делать, пока все в порядке?
5 авг 07, 16:14    [4480923]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
опытный ДБА
Guest
Что Вы там угадываете?????
вот Вам - изучайте == ЗУБРИТЕ!!!!!
Будете все это знать - считайте, что Вам будет по плечу работа ДБА.... если она упрется только в восстановление данных

The Oracle (tm) Users' Co-Operative FAQ
Секция Recovery

How to Recover From a Lost Datafile That Belongs to the SYSTEM Tablespace


SYSTEM tablespace is essential for Oracle to start and operate properly. 
What would you do if you lost a datafile that belongs to SYSTEM tablespace? 
Well, you need Media Recovery

1. Shutdown abort the database if the database is still up

2. Copy the corrupted or lost datafile from backup to the original location

3. Startup mount

4. select v1.group#, member, sequence#, first_change#
     from v$log v1, v$logfile v2
     where v1.group#=v2.group#;

5. Recover the database by Recover datafile '/path/filename.dbf'

6. Logs will be prompted. Confirm it until you see "Media Recovery Complete".
     If you are asked to enter a non-existence archived log, enter the full path of
     a member of the redo group where the sequence number matches the one being
     prompted (from step 4) until you see "Media Recovery Complete"

7. Alter database open

Note: this recovery method is good for Archivelog mode ON. 

=============================================================

How Do I Recover From Loss of a Member of a Multiplexed Control File?

Oracle version(s): 8.1.7.0.0
I multiplexed my control files yet one of them get corrupted. How do I recover from it?

Back to index of questions
Scenario 1 : Disk and filesystem is intact

In this case, there is no need to modify any setting in init.ora. 
Simply copy a good controlfile to the location of the bad controlfile.

1. Shutdown abort
2. Copy good controlfile to original location of bad 
controlfile:- cp /path/blah_good.ctl /path/blah_bad.ctl
3. Startup

Scenario 2 : Disk and filesystem is no good

1. Shutdown abort
2. Copy good controlfile to a new location:- cp /path/blah_good.ctl /new_good_path/blah.ctl
3. Change the CONTROL_FILES param in init.ora to reflect the new good path
4. Startup
 

Further reading: Oracle9i User-Managed Backup and Recovery Guide 

================================================================

How Do I Recover From Loss of a Member of Online Redo Log Group?

I multiplexed my redo logs yet one member file get corrupted. How do I recover from it?

Back to index of questions
Work for Archive Log Mode ON and OFF
No shutdown is required

1. To investigate what status is the missing redo log is -
    Select * from v$logfile shows which group and member is INVALID
2. From step 1, you will have the full path of the member that went corrupted. Drop this member -
    Alter database drop logfile member 'fullpath/log_filename.log'
3. Add a new member to the group -
    Alter database add logfile member '/fullpath/log_filename.log' reuse to group n; 
where log_filename.log and group n follow step 1
4. DONE

(Note: the size of the new redo log member should be the same as the other group members 
if you decide to use the same name and the option REUSE) 
================================================================


How Do I Recover From Loss of an unarchived Redo Log Group?

Oracle version(s): 8.1.7.0.0
How do I recover an unarchived redo log group?

Back to index of questions
Work for Archive Log Mode ON
Media Recovery is needed

1. To investigate what status is the missing redo log is -
    a. select * from v$logfile shows which group is INVALID
    b. select * from v$log shows the archived status of the invalid group
2. Now that you are confirmed that the lost redo file is an unarchived redo log (archived=NO), 
shutdown the database - shutdown immediate
3. Restore all datafiles from backup
4. Mount the database - Startup mount
5. If the media is corrupted where the default filesystem cannot be written, move the file to 
other location -
    a. In OS, find a directory to host the new file and touch the file (same name)
    b. alter database rename file '/oldpath/filename.log' to '/newpath/filename.log'
    If the original filesystem is good, skip this step
6. Do a cancel based incomplete recovery -
    a. recover database until cancel
    b. Press Enter until you see ora-00308 and ora-27037
    c. Rerun recover database until cancel but type CANCEL at the prompt this time
7. Open the database and reset the logs - alter database open resetlogs
    (Note after opening using resetlogs will create online log files)
8. Do a user managed backups of the entire database
9. DONE

(Note: All updates from the point of the incomplete recovery to the present need to be re-executed!) 

==================================================================

How Do I Recover From Loss of a Active Redo Log Group?

This morning I found out that one of my redo log file went missing. 
I don't have multiplexing. I loss the only copy that I have. The database 
is halting now. What shall I do?

Back to index of questions
Work for Archive Log Mode ON

1. To investigate what status is the missing redo log is -
    a. select * from v$logfile shows which group is INVALID
    b. select * from v$log shows the status of the invalid group
2. Now that you are confirmed that the lost redo file is an ACTIVE redo log, 
shutdown the database - shutdown immediate
3. Restore the backup
4. Mount the database - Startup mount
5. If the media is corrupted where the default filesystem cannot be written, 
move the file to other location -
    a. In OS, find a directory to host the new file and touch the file (same name)
    b. alter database rename file '/oldpath/filename.log' to '/newpath/filename.log'
    If the original filesystem is good, skip this step
6. Do a cancel based incomplete recovery -
    a. recover database until cancel
    b. Press Enter until you see ora-00308 and ora-27037
    c. Rerun recover database until cancel but type CANCEL at the prompt this time
7. Open the database and reset the logs - alter database open resetlogs
8. Do a user managed backups of the entire database
9. DONE

(Note: All updates from the point of the incomplete recovery to the present need to be re-executed!)

======================================================================

How Do I Recover From Loss of a Current Redo Log Group?
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 27 2002

Oracle version(s): 8.1.7.0.0
This morning I found out that one of my redo log file went missing. 
I don't have multiplexing. I loss the only copy that I have. The database 
is halting now. What shall I do?

Back to index of questions
Work for Archive Log Mode ON

1. To investigate what status is the missing redo log is -
    a. select * from v$logfile shows which group is INVALID
    b. select * from v$log shows the status of the invalid group
2. Now that you are confirmed that the lost redo file is a CURRENT redo log, 
shutdown the database - shutdown immediate
3. Restore the backup
4. Mount the database - Startup mount
5. If the media is corrupted where the default filesystem cannot be written, 
move the file to other location -
    a. In OS, find a directory to host the new file and touch the file (same name)
    b. alter database rename file '/oldpath/filename.log' to '/newpath/filename.log'
    If the original filesystem is good, skip this step
6. Do a cancel based incomplete recovery -
    a. recover database until cancel
    b. Press Enter until you see ora-00308 and ora-27037
    c. Rerun recover database until cancel but type CANCEL at the prompt this time
7. Open the database and reset the logs - alter database open resetlogs
8. Do a user managed backups of the entire database
9. DONE

(Note: All updates from the point of the incomplete recovery to the present need to be re-executed!)

===============================================================

How Do I Recover From Loss of a Inactive Redo Log Group?
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 28 2002

Oracle version(s): 8.1.7.0.0
You suspected you lost the only copy of redo group. You did a 
check on v$logfile and found that there is an invalid status for a 
redo log group. You further checked that this group is inactive and archived 
is yes from v$log.

Back to index of questions
Work for Archive Log Mode ON

1. To investigate what status is the missing redo log is -
    a. select * from v$logfile shows which group is INVALID
    b. select * from v$log shows the status of the invalid group
2. Now that you are confirmed that the lost redo file is an INACTIVE redo log, 
shutdown the database - shutdown immediate
3. Mount the database - Startup mount
4. Since the redo log group is inactive and is archived, just clear the redo log -
    alter database clear logfile group N (where N is the group # of the lost redo log)
5. Open the database - Alter database open
6. Check status - select * from v$log shows a new redo with UNUSED status
7. Do a full backup if you want
8. Done

(Note: Being the easiest case to recover, inactive and archived redo logs recovery 
is quite straightforward. The difficulty level will be
    1. Lost of current redo
    2. Lost of active redo
    3. Lost of unarchived redo
    4. Lost of inactive redo
See Oracle9i User-Managed Backup and Recovery Guide for inactive and unarchived lost of redo log
Remember, it's always a good idea to multiplex the redo log groups)
 
=========================================================================


How to Recover a Datafile that Belongs to READ-ONLY Tablespace
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 8 2002

Oracle version(s): 8.1.7.0.0
I lost a datafile that belongs to READ-ONLY tablespace, how do I recover it?

Back to index of questions

To recover a loss datafile that belongs to READ-ONLY tablespace is an easy 
task indeed. Since READ-ONLY tablespace is never modified, simply restore the 
datafile to its original location shall do the job. However, if you change 
from read-only to read-write vice-versa since last backup, you have to restore
 the file and do a media recovery on it.

     Svrmgrl> Recover datafile xxx 

Apply the logs until you see "Media Recovery Complete" 

==========================================================================

How do I recover from loss of a datafile that Belongs to the TEMP Tablespace
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 8 2002

Oracle version(s): 8.1.7.0.0
I lost a datafile that belongs to TEMP tablespace, how do I recover it?

Back to index of questions

This is the simplest form of recovering of a lost of datafile since in temporary 
tablespace, there is no permanent objects are stored there!!

1. Offline the tablespace

	In archivelog - alter database datafile xxx offline immediate
	In nonarchivelog - alter database datafile xxx offline drop

2.Drop the tablespace

	Drop tablespace xxx

3.Remove physical files of the tablespace and recreate them 
 
===========================================================================

Recovering from a loss datafile in index tablespace
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 7 2002

Oracle version(s): 8.1.7.0.0
I know that the datafile that is corrupted contains only index, 
how can go about to recover my database?

Back to index of questions

There is no easy way as to drop a datafile of a tablespace. The only way 
to remove a datafile from a database is to drop the defining tablespace. 
There are a few steps to follow:
If you think the index tablespace can be easily created

1. mount the database - startup mount
2. drop the datafile - alter database datafile xxx offline drop
3. open the database - alter database open 
4. drop the index tablespace - drop tablespace xxx including contents;
5. Recreate the index tablespace
6. Recreate the index in the index tablespace

 
To recreate the index tablespace is way too tedious and time consuming

1. Restore a good copy of datafile
2. Mount the database - startup mount 
3. Recover the datafile - recover datafile 'fullpath/filename'
4. You will be prompted for archived log. Confirm until you receive 
"Media Recovery Complete"

(PS. note that if you are running in noarchivelog mode, you can only 
recover to the point within the range of your online logs. Normally, 
to have all your online logs intact without being overwritten is quite 
unlikely and therefore not illustrated here!)

Further reading: Metalink Note:1013115.6 Recovering from a Lost Datafile 
in an Index Tablespace

================================================================


How to Recover in a situation where there is no datafile backup
Author's name: Allan W. Tham

Author's Email: allanwtham@hotmail.com
	Date written: Feb 26 2002

Oracle version(s): 8.1.7.0.0
I accidentally delete a datafile and I didn't do a backup on it.
How can I recover it?

Back to index of questions

Initially if the database is up, if you try to do a shutdown immediate, 
you will get ora-01116, ora-01110 and ora-27041. If initially you are down,
trying to start it up will result in Ora-01157 and Ora-01110

1. Do a shutdown abort
2. Startup mount
3. Get the Path and Size of the missing datafile -
    select df.file#, df.status, df.enabled, df.create_bytes, df.name
    from v$recover_file rf, v$datafile df
    where rf.file#=df.file# and rf.error = "FILE NOT FILE"
    (note the path and size of the missing file)
4. Create the datafile - 
alter database create datafile '/path/filename.dbf' as '/path/filename.dbf' size xxx reuse
    (Make sure that the path and size are the same as step 4)
5. If the file is offline, then bring in online - alter database datafile '/path/filename.dbf' online;
6. Recover the database - recover database
7. Open the database - alter database open

Further reading: Metalink Note:1060605.6

==================================================================
5 авг 07, 17:01    [4480975]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
Thinking about it...
Guest
опытный ДБА
Что Вы там угадываете?????
вот Вам - изучайте == ЗУБРИТЕ!!!!!
Будете все это знать - считайте, что Вам будет по плечу работа ДБА.... если она упрется только в восстановление данных


Научите сейчас.... Не надо ничего зубрить. DBA должен _понимать_ как работает СУБД вообще, и, в особенности, при восстановлении. А не зубрить все эти дебильные "сценарии восстановления". Зубрил, да еще получивших таким образом сертификат, тут видели достаточно.
5 авг 07, 17:54    [4481026]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
опытный ДБА
Guest
Thinking about it...
опытный ДБА
Что Вы там угадываете?????
вот Вам - изучайте == ЗУБРИТЕ!!!!!
Будете все это знать - считайте, что Вам будет по плечу работа ДБА.... если она упрется только в восстановление данных


Научите сейчас.... Не надо ничего зубрить. DBA должен _понимать_ как работает СУБД вообще, и, в особенности, при восстановлении. А не зубрить все эти дебильные "сценарии восстановления". Зубрил, да еще получивших таким образом сертификат, тут видели достаточно.


ну не принимайте все буквально - я не имел в виду зубрежку - человеку советую попробовать и так и эдак, ИМХО от этого будет бОльший прок
нежели от пустопорожнего совета = "Вы должны понимать"
Ибо многие из присутствующих здесь только и умеют оперировать понятиями "должны понимать", но путь к этому пониманию ни указать ни назвать не могут...
либо сами не знают, либо просто не хотят делиться знаниями......
В таком случае уж лучше сидеть и тестить сценарии, нежели смотреть в стену и пытаться понять
Потому как, если у человека упадет база - он, не зная как поднять ее, с советами о понимании будет .. сами знаете где.....
Все это ИМХО, но увы в концепциях не нашел эдакого понимания.. только описания, как, что и когда делать... понимаю ли я это?
Да, думаю, что понимаю... Вы скорей всего понимаете это совсем иначе....
pravednik еще иначе,
juks@gala.net тоже по своему..... и так далее
5 авг 07, 18:06    [4481032]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
juks@gala.net
Member

Откуда: Киев
Сообщений: 4212
Я понимаю, что ничего не понимаю. Многие не понимают и этого
5 авг 07, 18:33    [4481075]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
Thinking about it...
Guest
опытный ДБА

ну не принимайте все буквально ...

Я принимаю не "буквально", а так, как вы написали. Вы четко и ясно написали: зубрите.

На счет понимания.
Интересная логика у вас: если говорят "надо понимать", но не говорят как, то лучше сидеть и тестить сценарии (впрочем, тестить-то конечно нужно, с этим не спорю). То бишь, если разжевали не до конца...

andrey_anonymous, кстати, написал, _почему_ Оракл ведет себя так, а не иначе, а не указал на номер сценария.

Самые интересные ветки на sql.ru посвящены как раз "пониманию", поэтому ваше "но путь к этому пониманию ни указать ни назвать не могут" совершенно не в тему. Здесь много людей, которые только и делают, что делятся знаниями. Читайте форум, и откроется вам истина.
5 авг 07, 19:00    [4481120]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
juks@gala.net
Member

Откуда: Киев
Сообщений: 4212
Thinking about it...
"но путь к этому пониманию ни указать ни назвать не могут"

Этот путь у каждого свой.
Обычно он приходит через опыт.

Как идешь в незнакомом городе, пройдя однажды по улицам
автоматически понимаешь как ориентироваться в городе.
Можно конечно и карту вызубрить ))
Личный опыт создает дает ощущение что всё само собой понятно,
по городу уже прошел - второй раз идешь на автомате.
5 авг 07, 19:14    [4481139]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
опытный ДБА
Guest
juks@gala.net
Я понимаю, что ничего не понимаю. Многие не понимают и этого


Уффф.. а у меня уже комплекс развился было - чем больше читаю доки и данный форум - тем меньше чего-то понимаю..
Ну спасибо!!! Утешил! видимо не я один такой

Да, по поводу аналогии с путешествием по городу... понимание маршрута оно конечно = хорошо, но я-то перед поездкой в незнакомый город предпочитаю карту посмотреть и нужные квадраты распечатать.. дабы потом не было с пониманием того, что в Оракле происходит
5 авг 07, 19:24    [4481156]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
опытный ДБА
Guest
Thinking about it...

[quot опытный ДБА]
andrey_anonymous, кстати, написал, _почему_ Оракл ведет себя так, а не иначе, а не указал на номер сценария.


Да! Верно - он прямо таки рассказал "почему", к нему претензий нет - он сказал - надо понимать и подтвердил это своими словами:
andrey_anonymous
Потому что "using backup control file" подразумевает использование резервной копии control file, которая по понятным причинам не содержит и не может содержать номер последнего файла журнала. Делайте recover until cancel или используйте для восстановления свежую копию управляющего файла..


Проблема в том, что понимание приходит далеко не сразу, а на работе с базами приходится сразу сталкиваться (особенно прикольно, когда старый ДБА в сердцах уходит - берут нового и.....)
Чтобы было понимание нужен нехилый опыт и.. круг замыкается :-)
5 авг 07, 19:30    [4481165]     Ответить | Цитировать Сообщить модератору
 Re: RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFIL  [new]
MacDuck
Member

Откуда: Москва-Подольск
Сообщений: 6387
опытный ДБА
чем больше читаю доки и данный форум - тем меньше чего-то понимаю..



Ты не один такой. :-) Успокойся.

2 andrey_anonymous, (сегодня, 02:39): Андрюх, ну ты, блин, маньяк.
5 авг 07, 20:36    [4481243]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить