Вариант решения проблем с undo

dbstalker, 24 апреля

Попала случайно под руку давняя инструкция по восстановлению undo. Может кому сгодится. Больше об undo ищите в специальном разделе блога.

Определяем поврежденные undo сегменты по статусу "Needs Recovery" по результатам следующего запроса (например - 29):

1. select SEGMENT_NAME, STATUS from dba_rollback_segs;

Переводим undo в ручной режим управления: .

2. alter system set undo_management=MANUAL scope=both;

создаем свежий init.ora ( например, C:\oracle\ora92\database\initdb.ora):

3. create pfile from spfile;

вносим изменения в init.ora:

*._offline_rollback_segments=" _SYSSMU29$"
*._corrupted_rollback_segments="_SYSSMU29$"

если по каким либо причинам команду 2 не удалось выполнить, тогда в init.ora строчку *.undo_management='AUTO' поменять на *.undo_management='MANUAL'

Останавливаем базу данных

4. shutdown immediate

Открываем базу данных с откорректированным init.ora:

5. startup pfile=C:\oracle\ora92\database\initdb.ora;

создаем новое табличное пространство undo, например:

6. create undo tablespace undotbs2 datafile ' C:\oracle\oradata\db\undotbs2.dbf' size 500m;

Старое табличное пространство undo переводим в offline:

7. alter tablespace undotbs1 offline;

8.shutdown immediate

вносим изменения в init.ora:

*.undo_tablespace='UNDOTBS1' меняем на *.undo_tablespace='UNDOTBS2'

*.undo_management='MANUAL' поменять на *.undo_management='AUTO'

забираем параметры

_offline_rollback_segments

_corrupted_rollback_segments

9. startup pfile=C:\oracle\ora92\database\initdb.ora;

Создаем spfile:

9. create spfile from pfile;

10. shutdown immediate

11. startup

 

Новый комментарий

Я не спамер: введите суму 2+6



 

От авторов блога

О Блоге - прочитай перед началом.

Задать вопрос и получить ответ - уже решено 94 вопросов

Глоссарий - список терминов и сокращений


 
 

Бизнес форум

Последние темы:

Нужен поставщик Дропшиппинг
10 декабря, 1 ответа
КИНО КАФЕ!!!!!!!!!!!!!!!!
10 декабря, 1 ответа