powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблемы с UNDOTBS
70 сообщений из 70, показаны все 3 страниц
Проблемы с UNDOTBS
    #33362838
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зравствуйте

Код: plaintext
1.
2.
3.
4.
5.
6.
BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release  9 . 2 . 0 . 5 . 0  - Production
PL/SQL Release  9 . 2 . 0 . 5 . 0  - Production
CORE     9 . 2 . 0 . 6 . 0        Production
TNS for Linux: Version  9 . 2 . 0 . 5 . 0  - Production
NLSRTL Version  9 . 2 . 0 . 5 . 0  - Production
ОС: Linux RHEL 3 Update 4

Старое UNDOTBS сильно разрослось. Т.к. оно состояло из 9 файлов по 2 гига (а реально нужно только 4 гига что понял в процессе мониторинга) решил создать новое а старое грохнуть.

Было создано новое UNDOTBS (старое называлось UNDOTBS1). Сделал его активным. После этого попытался убить старое но в результате нарвался на ошибку о том что оно ещё используется.
Сделал

Код: plaintext
ALTER SYSTEM SET UNDO_TABLESPACE =UNDOTBS
Прождал время UNDO_RETENTION но всё равно не давало удалить старое...

В связи с этим попытался перевести это старое табличное пространство в офлайн. Не получилось...Тогда решил попробывать переводить пофайлово...два файла перевелись...после чего начались проблемы. Перевелись эти файлы офлайн коряво (переводил к сожалению с помощью OEM) и получилось что сессии ОЕМ-а остались а из самого ОЕМ-а выбросило...и часть файлов перевело а часть нет...Причём обратно в онлайн вернуть переведённые файлы не удавалось.....После этого начались плодиться сессии с пустым юзером а у сессии от ОЕМ постоянно увеличивался serial# в представлении v$session...Её даже засечь нельзя было чтоб кильнуть...В результате получилось что количество сесии достигло порога и в базу можно было подконектиться только как sysdba из под консоли...Пытался отстреливать эти "новоявленные" сессии но оракл их ставил как-бы в очередь на отстрел и реально ни одну не отстрелил. Они как бы ждали доступа к предидущему undotbs1, в частности - к этим вот офлайновым файлым.

После всяких тщетных попыток оставалось только одно - тушить базу....Перед этим пытался сделать rman-ом полный бэкап.....Не получилось, выдавало "Segmentation failed" (по-моему так....)....на многие запросы даже к системным представлениям выпадали ошибки рекурсивного SQL и прочей лажи.....Потушил лисенер в надежде что некоторые соединения отваляться и всё-таки отпустит старый undo.....Оказалось что все соединения внутренние и ничего не отвалилось....Стал на свой страх и риск перезапускать базу...На иммедиат не тушилось (ну понятно...хочет же откатить транзакции....) - пришлось делать аборт. База перезапустилась....при этом ролбэксегменты предидущего undo пометила как требующие востановления...

Удалять этот UNDO всё равно не давало! пришлось перезапукать инстанс и прописывать в файл параметров инициализации следующее:

Код: plaintext
_OFFLINE_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)

После чего всё-таки дало удалить бывшее undo_tablespace....Если убрать эти параметры после удаления и рестартануть то база при открытии обваливается....Поэтому параметры пока оставил.

Но теперь ещё осталась проблема следующего характера:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Sat Nov   5   20 : 56 : 24   2005 
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery
Sat Nov   5   21 : 00 : 03   2005 
Errors in file /oracle/admin/sabredwh/bdump/sabredwh_j000_11820.trc:
ORA- 00600 : internal error code, arguments: [ 25012 ], [ 1 ], [ 2 ], [], [], [], [], []
Причём undo segment 2 и undo segment 6 принадлежали предидущему (старом UBDOTBS1) и были уже удаленны...Но почему-то оракл всё-таки пытается их востанавливать...хотя и прописаны они в _OFFLINE_ROLLBACK_SEGMENTS

Почитал чуть-чуть и решил добавить ещё в инит.ора ещё:

Код: plaintext
._corrupted_rollback_segments = (_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)
и рестартануть базу.

Рестартанул. Но всё равно:
Код: plaintext
1.
2.
3.
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery
Хотя ora-600 покаместь не видно.

При этом id сегментов нового undotbs начинаются с 11 и в системных представлениях этих сегментов не видно! Их даже не получиться убить потому что их не видно...а SMON их видит:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
select usn,name from V$ROLLNAME

 0                                      	SYSTEM
 11                                     	_SYSSMU11$
 12                                     	_SYSSMU12$
 13                                     	_SYSSMU13$
 14                                     	_SYSSMU14$
 15                                     	_SYSSMU15$
 16                                     	_SYSSMU16$
 17                                     	_SYSSMU17$
 18                                     	_SYSSMU18$
 19                                     	_SYSSMU19$
 20                                     	_SYSSMU20$
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362839
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, забыл сказать самое главное:

ПОМОГИТЕ ПЛИЗ!!!!!!
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362865
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет
PartosСорри, забыл сказать самое главное:
ПОМОГИТЕ ПЛИЗ!!!!!!Восстанавливать БД не пробовал? Тока не говори, что она у тебя в NOARCHIVELOG :-(.

Если в ARCHIVELOG, то
1. _corrupted и _offline убери
2. Смонтируй БД
3. Файлы UNDOTBS1 переведи в online (file#,status from v$datafile)
4. Выполни recover database
5. Открой бд (noresetlogs)

В принципе, должно рассосаться. Будут новости - сообщай.

Всего
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362879
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо, Ааз, что откликнулся :) В какой раз меня уже спасаешь!

авторЕсли в ARCHIVELOG, то

База в архивлогах....но в связи с тем что в последние несколько дней катастрофически не хватало места - эти архивлоги чистились.. каждые 10 минут...была временная мера..ввиду этого и за undo взялся...нужно было освободить место. Каждый день делается RMAN-вский бэкап (вернее раз в месяц полный, раз в неделю инкрементальный, и каждый день над ним ещё одного уровня...)...Но и полный почистили ввиду нехватки места!!!
(база 300 гиг)...надеюсь ты не плюнешь от злости и всё-таки будешь со мной дальше разговаривать....я сейчас уже перед таким фактом!!! Не думал я что будут такие проблемы с пересозданием undo иначе полюбэ сделал бы бэкап :(

1. _corrupted и _offline убери
2. Смонтируй БД
3. Файлы UNDOTBS1 переведи в online (file#,status from v$datafile)

эх...их и тогда не получалось перевести в онлайн ....ту-ту уже эти файлы!! понимаешь...про них база уже забыла думать!!! и про это табличное пространство!! оно было удалено!!! Нигде ни про эти сегменты ни про это бывшее табличное пространство инфы уже нету!!!!!! Ни в одном системном представлении!! Всё облазил!!! И табличное пространство и сегменты удалены! А SMON почему-то про них помнит...

>4. Выполни recover database

не получится :(
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362883
Фотография Vadim_Maximov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PartosСнимай дамп и пересоздавай базу. ИМХО, это будет самое правильный поступок в данной ситуации (при отсутствии бекапов).
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362896
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет

Собственно, я так и предполагал, что чего-то важное недоступно... Все-таки файлы ты зря снес... Ну да ладно. Теперь имеешь битую базу. Низьзя так вольно обращаться с undo - это же часть журнала, все таки. Приоритет при предохранении (гхмм) от сбоев какой?
1. redo
2. system
3. undo
Ну да чего уж там...

Молись, чтобы покореженные undo были завязаны на какие-нить global temporary table. А если какая пакость в словаре требует того undo?

Давай попробуем SMON'а придержать от разборок с undo:
Код: plaintext
1.
2.
event = '10510 trace name context forever, level 10'
event = '10511 trace name context forever, level 10'
event = '10512 trace name context forever, level 10'
В принципе, напрашивается и 10052 (не чистить obj$), но это на потом. Сначала бы открыться. Ты бы еще job'ы пока тормознул и aq_ фсякое. Будут под ногами путаться

Всего
--
Andrey KRIUSHIN, OCM DBA, RDTEX J.S.C.
Disclaimer: Opinions are of my own and not necessar(-il)y
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362899
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim_Maximov, со всем уважением и пониманием происходящего....но не могу...

База 300 гиг...в продакшене.... (даже за 2 суток не уверен что перекинусь), с утра в понедельникс ней придут пользователи и будут хотеть работать...За простой меня кастрируют через повешанье :-(

Итак из-за shutdown abort все задания которые оставили выполнять на выходные отвалились :-(

Всё-таки надеюсь что может быть кто-нить подскажет как сказать SMON-у забыть про старый удалённый tablespace и как-то разрешить этот конфликт...понимаю что это тяжко в связи с тем что в системных представлениях глухо...но...а вдруг....
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362900
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim_Maximov PartosСнимай дамп и пересоздавай базу. ИМХО, это будет самое правильный поступок в данной ситуации (при отсутствии бекапов).Вадим, совет правильный. Ему и так придется. Просто места нет, да и не известно, пройдет ли exp.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362902
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ааз Сначала бы открыться. Ты бы еще job'ы пока тормознул и aq_ фсякое. Будут под ногами путаться


Ааз....базу открыл...всё нормально!!! С ней можно работать!!! Старый undo она сама снесла через команду drop после открытия (но в этот момент чтобы открыться был выставлен OFFLINE_ROLLBACK_SEGMENTS, но не был выставлен _corrupted_rollback_segments )....База с этим параметром открылась!! Даже после шутдаун аборт!! Потому как использовала уже новый undotbs и прождал период undoretention....А когда она открылась только тогда я уже попытался снести старый undo через команду drop!!! Удалилось старое UNDOTBS1....но всё время вспоминает про два сегмента из этого старого таблспейса который сама же и удалила!!! Вот в чём проблема....Как бы сделать чтобы оракля про них забыли??? Непонятно почему они от них чего-то хотят....
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362905
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторevent = '10510 trace name context forever, level 10'
event = '10511 trace name context forever, level 10'
event = '10512 trace name context forever, level 10'

А вот это что такое, можешь объяснить?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362906
Фотография Vadim_Maximov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Параметры в init.ora. Пропиши их там.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362907
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вот это

автор_OFFLINE_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)

._corrupted_rollback_segments = (_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)

убирать там же???

З.Ы. Джобы уже до этого отключил...
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362910
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PartosУдалилось старое UNDOTBS1....но всё время вспоминает про два сегмента из этого старого таблспейса который сама же и удалила!!! Вот в чём проблема....Как бы сделать чтобы оракля про них забыли??? Непонятно почему они от них чего-то хотят....Ищи тех, кому они нужны. М.б. повисшая распределенная транзакция (DBA_2PC_PENDING.LOCAL_TRAN_ID покажет сегмент отката), м.б. какая операция типа INDEX REBUILD для всего индекса или секции... У тебя как эта проблема проявляется? Job какой падает, или экземпляр ложиться? Поскольку простанство в offline передавать тебе не давали (перед shutdown abort), то были активные транзакции. Че не посмотрел-то? А теперь всю базу перекапывать, блинк.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362917
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АазПривет

Собственно, я так и предполагал, что чего-то важное недоступно... Все-таки файлы ты зря снес... Ну да ладно. Теперь имеешь битую базу. Низьзя так вольно обращаться с undo - это же часть журнала, все таки. Приоритет при предохранении (гхмм) от сбоев какой?
1. redo
2. system
3. undo
Ну да чего уж там...

Молись, чтобы покореженные undo были завязаны на какие-нить global temporary table. А если какая пакость в словаре требует того undo?

Давай попробуем SMON'а придержать от разборок с undo:
Код: plaintext
1.
2.
event = '10510 trace name context forever, level 10'
event = '10511 trace name context forever, level 10'
event = '10512 trace name context forever, level 10'
В принципе, напрашивается и 10052 (не чистить obj$), но это на потом. Сначала бы открыться. Ты бы еще job'ы пока тормознул и aq_ фсякое. Будут под ногами путаться

Всего
--
Andrey KRIUSHIN, OCM DBA, RDTEX J.S.C.
Disclaimer: Opinions are of my own and not necessar(-il)y

Андрей, база у него поднята в рабочем состоянии с _corrupted_ROLLBACK_SEGMENTS
Undo пересоздан - единственная проблема осталась именно с SMON'ом,
который пенриодически пытается восстановить не подлежащий восстановлению ролбэк - такая хрень получилась по той причине, что старое табличное пространство было дропнуто при установленном _OFFLINE_ROLLBACK_SEGMENTS, а надо это было делать по _corrupted - в этом случае проблем бы не было :(
Объекты, затронутые незафиксированными\неоткаченными транзакциями - не существенны и могут быть удалены.
В итоге сейчас задача - заставить забыть оракл о существовании этих ролбэков - путем установки event пока ничего не получается - SMON честно каждые 5 минут вспоминает о них.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362918
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partos
Код: plaintext
1.
_OFFLINE_ROLLBACK_SEGMENTS=(_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)
_corrupted_rollback_segments = (_SYSSMU1$,_SYSSMU2$,_SYSSMU3$,_SYSSMU4$,_SYSSMU5$,_SYSSMU6$,_SYSSMU7$,_SYSSMU8$,_SYSSMU9$,_SYSSMU10$)
Убирай. Ниже - пояснения к event'ам.
Код: plaintext
1.
2.
 10510 ,  00000 , "turn off SMON check to offline pending offline rollback segment"
 10511 ,  00000 , "turn off SMON check to cleanup undo dictionary"
 10512 ,  00000 , "turn off SMON check to shrink rollback segments" 
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362932
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наташа, привет
nata1111В итоге сейчас задача - заставить забыть оракл о существовании этих ролбэков - путем установки event пока ничего не получается - SMON честно каждые 5 минут вспоминает о них.Ну и откуда, по-твоему, он об этих сегментах узнает? Из undo$? Типа, DBA_UNDO_SEGMENTS. А если все-таки в процессе отката чего-нить, что затрагивало словарь? Или карту распределения пространства? Потом ведь концов не найдешь. Несущественные объекты тут не главное

Я бы проверил:
1. Видны ли несуществующие undo DBA_ROLLBACK_SEGMENTS
2. Через event 10500 (на уровне не знаю каком, 4 многовато может быть), узнал бы, чего там вытворяет SMON, и какая сволочь его выводит на эти сегменты.

Всего
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362934
Фотография stdio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PartosКак бы сделать чтобы оракля про них забыли???Пересоздать базу PartosНепонятно почему они от них чего-то хотят....Восстановить из UNDO тебе чего-то хотят.
nata1111Undo пересоздан - единственная проблема осталась именно с SMON'ом,
который пенриодически пытается восстановить не подлежащий восстановлению ролбэк Это как?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362940
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
select * from DBA_2PC_PENDING

пусто...нет у меня распределённых транзакций


АазУ тебя как эта проблема проявляется? Job какой падает, или экземпляр ложиться? Поскольку простанство в offline передавать тебе не давали (перед shutdown abort), то были активные транзакции. Че не посмотрел-то? А теперь всю базу перекапывать, блинк.У тебя как эта проблема проявляется? Job какой падает, или экземпляр ложиться? Поскольку простанство в offline передавать тебе не давали (перед shutdown abort), то были активные транзакции. Че не посмотрел-то? А теперь всю базу перекапывать, блинк.

Проблема проявляется в следующем:
1) без указания параметра _OFFLINE_ROLLBACK_SEGMENTS база подымается и сразу же падает.
2) без указания параметра ._corrupted_rollback_segments каждые пол-часа в алерт идёт крик о

Код: plaintext
1.
Errors in file /oracle/admin/sabredwh/bdump/sabredwh_j000_11820.trc:
ORA- 00600 : internal error code, arguments: [ 25012 ], [ 1 ], [ 2 ], [], [], [], [], []

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

3) вне зависимости от всяких параметров постоянно, каждые 5 минут (интересно...может это smon каждые 5 мин запускается...потому как job-ы все отключены) валиться в алерт сообщение:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Sun Nov   6   17 : 07 : 50   2005 
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery
Sun Nov   6   17 : 12 : 57   2005 
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery
Sun Nov   6   17 : 18 : 05   2005 
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery
Sun Nov   6   17 : 23 : 12   2005 
SMON: about to recover undo segment  2 
SMON: mark undo segment  2  as needs recovery
SMON: about to recover undo segment  6 
SMON: mark undo segment  6  as needs recovery

хотелось бы от них избавиться...


Насчёт активных транзакций:

я в самом первом сообщении описал как всё произошло (OEM поучавствовал)...И я начал с того OEM-ом стал переводит файлы поочереди в оффлайн...тоесть если он уже не нужен этот файл для активных транзакций - тогда его отпустит...Вот и наотпускало....в результате сессии забились (тоесть каким-то чудом резко наплодилось много сессий с пустым юзеров в поле username в представлении V$session), подключиться кроме как с консоли "/as sysdba" просто не получалось....поле serial# у сессии от OEM-ма изменялось в сторону увелечения каждые 5 секунд...shutdown abort делал не потому что хотелось..чест слово...а потому что сессии забились...и не одна не откатывалась...ни одна ни килялась...даже когда лисенер потушил перед тем как аборт делать...думал может всё-таки попустит и хоть что-то да отвалиться...нет...все ждали чего-то от этого анду который при попытке перевода с помощью OEM его датафайлов в офлайн встал в непонятную позу...поэтому смотрел бы я или не смотрел...всё равно я ничего сделать не мог!!! база ни на что не реагировала...даже на кил сессион...на половину запросов от сиса выдавало ошибку рекурсивного sql
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362942
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АазНаташа, привет
nata1111В итоге сейчас задача - заставить забыть оракл о существовании этих ролбэков - путем установки event пока ничего не получается - SMON честно каждые 5 минут вспоминает о них.
Я бы проверил:
1. Видны ли несуществующие undo DBA_ROLLBACK_SEGMENTS
Всего

Так в том то и дело что нет их там!!! Вот в чём проблема!!! Я про что и рассказаваю - НИ В ОДНОМ СИСТЕМНОМ ПРЕДСТАВЛЕНИИ НЕТ!!! А ТАК БЫ Я ИХ СНЁС И ЖИЛ СПОКОЙНО
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362947
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stdio PartosКак бы сделать чтобы оракля про них забыли???Пересоздать базу

я тока ЗА!! Но.....

stdio
PartosНепонятно почему они от них чего-то хотят....Восстановить из UNDO тебе чего-то хотят.


Так а что востановить??? И откуда??? Если база сама же и грохнула это UNDOTBS1 после открытия базы!!!!!!!!!!!!!!!!!! Undoretention прошло на момент abort!! И использовалось совсем другое undo (новое) всё это время...Благодаря этому и поднялась база....

stdio
[quot nata1111]Undo пересоздан - единственная проблема осталась именно с SMON'ом,
который пенриодически пытается восстановить не подлежащий восстановлению ролбэк Это как?
[quot stdio]

Слюшай!! Я тебя очень уважаю!! Но нельзя ж быть таки непонятливым: Ната повторила такую же ситуацию как у меня и у нас обоих НИ В ОДНОМ !!!системном представлении нет упоминания про старые RBS....НУ КАК ИХ ТОГДА МОЖНО ВОСТАНОВИТЬ ЕСЛИ ИХ УЖЕ НЕТУ??? ЕСЛИ БАЗА САМА ИХ СНЕСЛА!
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362950
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АазНаташа, привет
nata1111В итоге сейчас задача - заставить забыть оракл о существовании этих ролбэков - путем установки event пока ничего не получается - SMON честно каждые 5 минут вспоминает о них.Ну и откуда, по-твоему, он об этих сегментах узнает? Из undo$? Типа, DBA_UNDO_SEGMENTS. А если все-таки в процессе отката чего-нить, что затрагивало словарь? Или карту распределения пространства? Потом ведь концов не найдешь. Несущественные объекты тут не главное

Я бы проверил:
1. Видны ли несуществующие undo DBA_ROLLBACK_SEGMENTS
2. Через event 10500 (на уровне не знаю каком, 4 многовато может быть), узнал бы, чего там вытворяет SMON, и какая сволочь его выводит на эти сегменты.

Всего
Разумеется, в undo$ остались все сегменты из удаленного табличного пространства и у всех у них одинаковый статус, вот токо SMON принимает во внимание только один из них - тот, который был активным в момент перевода датафайлов в офлайн.
Тупо удалила его из словаря - база поднялась как новая :)
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362952
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nata1111
Разумеется, в undo$ остались все сегменты из удаленного табличного пространства и у всех у них одинаковый статус, вот токо SMON принимает во внимание только один из них - тот, который был активным в момент перевода датафайлов в офлайн.
Тупо удалила его из словаря - база поднялась как новая :)
Усе, разобрались - таки статусы разные, в этом и причина.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362954
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон!

undo$ -единственное место где я действительно нашёл инфу обо всех (в том числе и о бывших и удалённых) RBS!!!!!

При этом у тех rBS на которые матюкается -статус "5", у удалённых статус "3", остальные, которые боевые - статус "1".

Вот чешуться ручки подправить им статус :)

Люди, как думаете, стоит? Ведь всё-таки словарь!!
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362955
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Че-то такое вспоминается про deferred rollback... Типа, создаются в SYSTEM, когда какое-нить пространство (а м.б. и файл данных?) "неожиданное" переводится в OFFLINE, что не позволяется выполнить rollback немедленно. Мол, вернется в ONLINE, тогда дооткатываем.

2 Partos: трасировку SMON'а включал? И что у тебя в undo$ по поводу этих сегментов? Присутствуют ли? status какой?

2 nata1111: Наташ, ай-яй-яй... Не заставляй меня в тебе разочаровываться - это по поводу "тупо удалила"...
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362958
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прикладываю результат запроса к undo$
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362960
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С номером с 1-ого по 10-ый включительно это старые RBS....один системный...остальные с 11 - новые....


Пошёл трассировать SMON
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362977
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АазЧе-то такое вспоминается про deferred rollback... Типа, создаются в SYSTEM, когда какое-нить пространство (а м.б. и файл данных?) "неожиданное" переводится в OFFLINE, что не позволяется выполнить rollback немедленно. Мол, вернется в ONLINE, тогда дооткатываем.


Ааз...а где слышал...очень интересно про это почитать...только что перелапатил всю доку..но про это ничего не нашёл...Если вдруг найдёшь - кинь плиз ссылку...очень интересно!!
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362978
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PartosАаз...а где слышал...очень интересно про это почитать...только что перелапатил всю доку..но про это ничего не нашёл...Если вдруг найдёшь - кинь плиз ссылку...очень интересно!!В старой доке (Oracle7 ?). Глянь в Concepts по 9i где deprecated features. Там коротко прописано. А больше я нигде и не видел.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362987
deferred rollback
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почитать можно у Стива. У него на сайте в поиске.
Еще Information on Deprecated Features
UNDO$
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33362988
Александр Соколов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OracleWhen a tablespace goes offline, Oracle does not permit any subsequent SQL statements to reference objects contained in that tablespace. Active transactions with completed statements that refer to data in that tablespace are not affected at the transaction level. Oracle saves rollback data corresponding to those completed statements in a deferred rollback segment in the SYSTEM tablespace. When the tablespace is brought back online, Oracle applies the rollback data to the tablespace, if needed.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363005
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
короче говоря, предложение такое :)
поскольку простой базы чреват членовредительством автора :)
оставить все как есть до момента создания полноценного бэкапа,
потом восстановить подпорченные объекты и избавиться от ошибки путем удаления упоминания о ролбэке из undo$ - в худшем случае получится тоже самое изначально рекомендованое пересоздание базы :)
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363022
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попытались трассировать SMON:

Код: plaintext
ALTER SYSTEM SET EVENTS '10500 trace name context forever, level 10'

у Наты в трэйсе:
Код: 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.
45.
46.
47.
48.
49.
50.
51.
Dump file d:\ora9\admin\nata\bdump\nata_smon_3144.trc
Sun Nov  06   18 : 21 : 07   2005 
ORACLE V9. 2 . 0 . 6 . 0  - Production vsnsta= 0 
vsnsql= 12  vsnxtr= 3 
Windows  2000  Version  5 . 0  Service Pack  4 , CPU type  586 
Oracle9i Enterprise Edition Release  9 . 2 . 0 . 6 . 0  - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release  9 . 2 . 0 . 6 . 0  - Production
Windows  2000  Version  5 . 0  Service Pack  4 , CPU type  586 
Instance name: nata

Redo thread mounted by this instance:  0  <none>

Oracle process number:  6 

Windows thread id:  3144 , image: ORACLE.EXE


*** SESSION ID:( 5 . 1 )  2005 - 11 - 06   18 : 21 : 07 . 968 
***  2005 - 11 - 06   18 : 21 : 07 . 968 
SMON: system monitor started
***  2005 - 11 - 06   18 : 21 : 09 . 968 
SMON: system monitor process posted
***  2005 - 11 - 06   18 : 21 : 14 . 343 
SMON: system monitor process posted
***  2005 - 11 - 06   18 : 21 : 14 . 500 
SMON: system monitor process posted
***  2005 - 11 - 06   18 : 21 : 15 . 046 
SMON: system monitor process posted
***  2005 - 11 - 06   18 : 21 : 16 . 218 
Shrinking rbseg # 0 
***  2005 - 11 - 06   18 : 21 : 16 . 218 
Shrinking rbseg # 1 
***  2005 - 11 - 06   18 : 21 : 16 . 234 
Shrinking rbseg # 2 
***  2005 - 11 - 06   18 : 21 : 16 . 234 
Shrinking rbseg # 3 
***  2005 - 11 - 06   18 : 21 : 16 . 234 
Shrinking rbseg # 4 
***  2005 - 11 - 06   18 : 21 : 16 . 234 
Shrinking rbseg # 5 
***  2005 - 11 - 06   18 : 21 : 16 . 234 
Shrinking rbseg # 6 
***  2005 - 11 - 06   18 : 21 : 16 . 250 
Shrinking rbseg # 7 
***  2005 - 11 - 06   18 : 21 : 16 . 250 
Shrinking rbseg # 8 
***  2005 - 11 - 06   18 : 21 : 16 . 250 
Shrinking rbseg # 9 
***  2005 - 11 - 06   18 : 21 : 16 . 250 
Shrinking rbseg # 10 
***  2005 - 11 - 06   18 : 21 : 16 . 265 

у меня трэйс вообще не создался!

В результате склоняюсь к тому что завтра буду бэкапить рманом базу а после проверки этого самого бэкапа....пытаться изменить undo$...У Наты получилось и база забыла про старые undo.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363033
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partosу меня трэйс вообще не создался!Ну и хрен с ним. Если у Наты воспроизведена та же ситуация (статусы покореженых сегментов), значит SMON их по своему таймеру сжимать хотел. event 10512 это должен был отключить. PartosВ результате склоняюсь к тому что завтра буду бэкапить рманом базу а после проверки этого самого бэкапа....пытаться изменить undo$...У Наты получилось и база забыла про старые undo.Тебе надо бы все таблицы и индексы просканировать, чтобы убедиться в отсутсвии незафиксированных транзакций, ссылающихся на убитые сегменты. Начни с SYSTEM. exp для схемы SYS проверит таблички. Потом по индексам... Уже будет некая уверенность. Далее по остальным табличкам. rman тебе в этом не поможет - он только порчу блоков проверяет.

С проверкой scan'ами, конечно, тоже жжж... круто получается... Какая-нить 100-лет назад зафиксированная транзакция из неочищенного блока полезет проверяться. И увидит, что ейный любимый сегмент попорчен. Смеху будет... А вот если бы сегмента не было - ок. С другой стороны, если транзакция реально не зафиксирована и сегмент удален, будет тебе хренотень в базе, поскоку незафиксированную примут за зафиксированную. Сам выбирай, чего тебе больше нравится.

Кстати, у Наты после тех экзерсисов запросто могли тараканы в базе остаться.

Всего
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363038
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет, у меня трасировка обращения к порченому сегменту не показала.
хотя в алерте сообщения продолжали появляться.
"просканировать" - что вы имеете в виду?
" Какая-нить 100-лет назад зафиксированная транзакция из неочищенного блока полезет проверяться. И увидит, что ейный любимый сегмент попорчен. Смеху будет... А вот если бы сегмента не было - ок." - если я не ошибаюсь, этому восприпятствует параметр _corrupted_rollback_segments
Хренотень с незафиксированными транзакциями уже есть - это по-любому придется исправлять.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363061
Фотография Ааз
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nata1111"просканировать" - что вы имеете в виду?FULL SCAN и FAST FULL INDEX SCAN.

Про хренотень - есть такая фича delayed logging block cleanout - блок уехал из кеша на диск до фиксации, да и в кеше не все чистятся (10% max?). Считаем, что блок этот нафинг никому долгое время был не надобен. При обращении к неочищенному блоку мы видим:
1. Заблокированную строку, отсылающую нас в ITL
2. ITL отсылает в undo-сегмент и соответствующую точку входа в его таблицу транзакций (XID == #сегмента, точка входа и номер использования точки входа)
3. Если сегмент присутствует, то
__a) если точка входа перезаписана другой транзакцией, значит наша зафиксирована. Cool! Иначе бы нас откатили.
__b) если не перезаписана - либо зафиксирована, либо еще активна. Далее по обстоятельствам (DML:блокируем или блокируемся; SELECT: конструируем CR-версию)
__с) это еще не все варианты.
__c1) Есть особенности для долгоиграющих транзакций, но мы пока на них забъем.
__c2) Если undo-сегмент удалили, а потом создали другой и случайно дали ему тот же номер.
__d) undo-cегмента с таким номер уже не существует.

Если бы c undo обращались как положено, в случаях c2) и d) мы законно сделали бы вывод, что транзакция зафиксирована. Иначе бы в нашем блоке не остался незафиксированный мусор - rollback почистил бы.

Если undo удалили некорректно, то ... по правилам мы считаем незафиксированный мусор правильным и зафиксированным. Нравицца?

Всего
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363064
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
deferred rollback, Александр Соколов

Спасибо большое, я нашёл уже там где Ааз посоветовал!!

Ааз!!! ТЕБЕ БОЛЬШУЩЕЕ СПАСИБО ЗА ВНИМАНИЕ И ПОМОЩЬ!!!

З.Ы. Я сюда в процессе ещё напишу чем всё закончилось....
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33363087
Partos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только что сделал импорт пользователя SYS -всё прошло нормально...в алерт тоже ничего кроме моих сообщений не вывалилось.

АазПотом по индексам... Уже будет некая уверенность. Далее по остальным табличкам.

А вот тут уже не совсе понял! Тоесть лучше сделать полный экспорт чтоб быть уверенным что всё путём (или же наоборот знать что какие-то транзакции не откатились и знать где?)

АазПро хренотень - есть такая фича delayed logging block cleanout - блок уехал из кеша на диск до фиксации, да и в кеше не все чистятся (10% max?). Считаем, что блок этот нафинг никому долгое время был не надобен. При обращении к неочищенному блоку мы видим:
1. Заблокированную строку, отсылающую нас в ITL
2. ITL отсылает в undo-сегмент и соответствующую точку входа в его таблицу транзакций (XID == #сегмента, точка входа и номер использования точки входа)
3. Если сегмент присутствует, то
__a) если точка входа перезаписана другой транзакцией, значит наша зафиксирована. Cool! Иначе бы нас откатили.
__b) если не перезаписана - либо зафиксирована, либо еще активна. Далее по обстоятельствам (DML:блокируем или блокируемся; SELECT: конструируем CR-версию)
__с) это еще не все варианты.
__c1) Есть особенности для долгоиграющих транзакций, но мы пока на них забъем.
__c2) Если undo-сегмент удалили, а потом создали другой и случайно дали ему тот же номер.
__d) undo-cегмента с таким номер уже не существует.

Если бы c undo обращались как положено, в случаях c2) и d) мы законно сделали бы вывод, что транзакция зафиксирована. Иначе бы в нашем блоке не остался незафиксированный мусор - rollback почистил бы.


А вот тут из всего этого практически понял только первые 2-а предложения :) К сожалению не знаю как устроена таблица транзакций и не в курсе что такое ITL. Можете немножко для дебилов, а?

Ааз
Если undo удалили некорректно, то ... по правилам мы считаем незафиксированный мусор правильным и зафиксированным. Нравицца?


Не нравицца конечно же...а у меня есть другой выбор??? Вот допустим мой exp найдёт что-то? и что тогда? При этом есть подозрения что у меня были запущены долгоиграющие транзакции :-(
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33365476
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ааз
__c2) Если undo-сегмент удалили, а потом создали другой и случайно дали ему тот же номер.


БТВ, по какому принципу Оракл дает номера сегментам?

Привет, Ааз. Собственно, мы с Partos'ом сменщики, проблема у нас общая. (Он уехал на 3 дня)

Сейчас ситуация такая: сделал полный бэкап rman-ом и прибил две строки с потерянными сегментами и неверным статусом в UNDO$, строки о corrupted в init закомментил и пробовал перестартовать - фиг там, монтируется, но не открывается. Просто все взвисает, никакой ругани в alert. Вообще ничего.

Cейчас делаю restore из полного бэкапа дабы вернуться к ситуации когда база все-таки работала кое-как.
Далее, что делать хочу: выбили 2-х процессорный блейд и 300 Гиг SAN-а, ОС и Orasoft 1 в 1 как на сломанной делаю, создаю базу и перемещаю ts, содержащие мастер-схему.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33365480
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Partos
Не нравицца конечно же...а у меня есть другой выбор??? Вот допустим мой exp найдёт что-то? и что тогда? При этом есть подозрения что у меня были запущены долгоиграющие транзакции :-(

Конечно, блин, были запущены: DWH на этапе массированного влива, а положить в restricted ты не соизволил.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33366218
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MacDuck
Далее, что делать хочу: выбили 2-х процессорный блейд и 300 Гиг SAN-а, ОС и Orasoft 1 в 1 как на сломанной делаю, создаю базу и перемещаю ts, содержащие мастер-схему.

Все это здорово, срекаверил базу. Только открываться она отказывается. Молчит и не открывается. Монтируется прекрасно.

Посоветуйте плз что делать-то?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33366271
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MacDuck
Посоветуйте плз что делать-то?

Да, застреваем на
Successful open of redo thread 1
Tue Nov 8 12:47:19 2005
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Tue Nov 8 12:47:19 2005
SMON: enabling cache recovery
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33367633
Фотография nata1111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как дела?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33368083
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nata1111как дела?

Вот так:

Да, застреваем на
Successful open of redo thread 1
Tue Nov 8 12:47:19 2005
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Tue Nov 8 12:47:19 2005
SMON: enabling cache recovery
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33368251
Miff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте заглянуть в V$FAST_START_SERVERS and V$FAST_START_TRANSACTIONS. Там должна быть инфа по поводу прогресса восстановления после сбоя.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33368365
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MiFfПопробуйте заглянуть в V$FAST_START_SERVERS and V$FAST_START_TRANSACTIONS. Там должна быть инфа по поводу прогресса восстановления после сбоя.

Обязательно как только закончу повторное восстановление из RMAN-бэкапа (база-то здоровая).

А в чем смысл? Ну, допустим подтвердится, что инстанс застревает на SMON TX recovery, и что дальше?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33368745
Miff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Смысл заглянуть в эти views в том, чтобы посмотреть - застрял процесс восстановления после сбоя или он работает.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33368796
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MiFfСмысл заглянуть в эти views в том, чтобы посмотреть - застрял процесс восстановления после сбоя или он работает.

Да я на ночь оставлял - пофиг.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33657312
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PartosБаза 300 гиг...в продакшене.... (даже за 2 суток не уверен что перекинусь)
Ну это вы зря... Все зависит от железа которым вы располагаете...
Вот 160 гектар за 18 часов


http://surgutnet.ru
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33657437
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По моему самое время вспомнить про TRANSPORT_TABLESPACE

http://surgutnet.ru
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #33663618
ПЕС
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чем закончилось-то?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #34221462
LightWarrior
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕСчем закончилось-то?
+1
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #34255415
Анонимус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно, уважаемые Partos и MacDuck , сделали выводы, или так и продолжают обращаться с промышленными базами? Мудрить с Undo в рабочее время, апдейтить словарь, и т.п.? не говоря уже про удаление архивлогов.
А то прочитают этот топик (или ему подобные топики) молодые ораклисты, и подумают что это "круто", и пойдут проверять прочитанное на доверенных им базах? :))
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #34255588
MacDuck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АнонимусИнтересно, уважаемые Partos и MacDuck , сделали выводы, или так и продолжают обращаться с промышленными базами?

Сделали. :-)


А финал истории был печален: база была грохнута, в результате пропало хрен знает сколько человекочасов влива в DWH. От кастрации Partos-а спасло лишь наличие исходных данных из которых оный препродуктивный DWH формировался.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #34355750
Гоость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет возможности удатить старый undo по одной простой причине, в нем система располагает rollback сегмент, а вот создать rollback в новом undo пространстве, и перевести систему на использование нового undo сегмента, то система отпустит старый undo и его можно будет удалить.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Проблемы с UNDOTBS
    #38925397
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сжатие UNDO типичная задача.
Например по какой либо причине хочется уменьшить размер UNDO, благо вроде места свободного в нём полно.
Тем не менее шринк ругается что где-то в свободном месте есть что-то что не даёт как следует шринкнуть табличное пространство.

Самая что ни на есть тривиальная задача.
Главное не наделать глупостей.

Вот правильный алгоритм уменьшения размеров UNDO :
1) смотрим время удержания
show parameter undo_retention
, запоминаем
2) делаем маленький undo_retention (секунд 10)
alter system set undo_retention=10 SCOPE=MEMORY SID='*' ;
3) создаём новое маленькое табличное пространство например UNDO2
делаем его рабочим
alter system set undo_tablespace=UNDO2 SCOPE=BOTH SID='*' ;
4) ждём 10 секунд :-) и останавливаем базу
shutdown immediate ;
5) стартуем БД
6) спокойно и без проблем истребляем старое UNDO
7) возвращаем старое время удержания

На самом деле достаточно просто создать новое маленькое UNDO, сделать его рабочим, перестартовать БД, после чего грохнуть старое UNDO.

Самое сложное в этом процессе договориться с руководством об остановке БД.
Иногда это очень сложно, но лучше это, чем страсти описанные автором темы.

Неоднократно без всяких проблем выполнял подобные действия.
Надеюсь что эта рекомендация предотвратит у начинающих вышеописанные ужасы.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #38925628
проходил мимо...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomНа самом деле достаточно просто создать новое маленькое UNDO, сделать его рабочим, перестартовать БД, после чего грохнуть старое UNDO.

Неоднократно без всяких проблем выполнял подобные действия.
Всё это время вам жутко, просто нереально везло. Или база совершенно ненагружена.
Хотя, вы же не писали, что дропали анду в маунте типа "оффлайн дроп". А от остального Оракл вас убережёт
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #38925769
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDom,

undo_retention тут каким местом?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Проблемы с UNDOTBS
    #39491102
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если бы я это многократно не делал, и не был уверен в том, что это безопасно, я бы поостерёгся такие советы давать. undo_retenshen просто подстраховка, можно его и не менять. Идея состоит в том что старое undo перестанет использоваться по прошествии этого времени, а все новые транзакции будут использовать новое undo.

На самом деле можно не менять undo_retenshen, а просто перестартовать БД (естественно с immediate), а после старта просто удалить старое undo.

C этим алгоритмом у меня проблем не было, а проблема возникла при переводе старого undo в offline normal. БД большая, и решили поосторожничать, не сразу грохнуть старый undo, а подождать, посмотреть может оно кому то нужно. И таки да :-( пошли злобные ругательства на то что данный файл не может быть рид в данный момент от совершенно разных задач, которые никак не связанны с этим undo. Пришлось вернуть в online. Эта опупея мной в другой ветке описана, и как мне в ней подсказали, не я первый наступил на эти грабли.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491135
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDom,
undo_retention если оно не guarantee, принципиально на целостность данных не влияет
Когда вы корректно удалили undo-тп и если совершенно случайно стартанутой до начала манипуляций с андо сессии понадобятся данные из старого андо, или флэшбэк-запрос захочет их увидеть,то получит snapshot too old, если сессия наступит на отложенную очистку блоков, то сочтет транзакции закомиченными.
А вот если вы перевели тп в офлайн, то ядро считает что у вас андо еще на месте и в перечисленных случаях ломанется его читать, на что вы и получите соответствующие ошибки.
Как будет с undo_retention guarantee - не знаю, советую проверить и поделиться )
Скорее всего просто до его истечения не сможете удалить тп.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491350
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстати, если кто то не согласен с предложенным мной алгоритмом - предложите свой вариант. С удовольствием ознакомлюсь, не исключено что он будет лучше моего. Вперёд коллеги, жду лучшего варианта.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491397
chpk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VDom,
Я вообще не вижу смысла его сжимать, сделал 10Гб, - копейки в наши дни, и забыл о его существовании
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491482
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomКстати, если кто то не согласен с предложенным мной алгоритмом - предложите свой вариант. С удовольствием ознакомлюсь, не исключено что он будет лучше моего. Вперёд коллеги, жду лучшего варианта.

для идиотов вполне подойдет )

Для остальных все проще

Создаем новое андо-тп, переключаем на него параметр undo_tablespace, удаляем старое после того как в нем не останется активных сегментов либо когда оракл позволит это сделать. Для извращенцев можно и перегрузить.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491595
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как не крути, а время от времени с undo приходится сталкиваться. Я рад за тех кто создал undo какого то размера и забыл о нём. И я был бы счастлив если бы у меня была такая ситуация. К сожалению на практике всё несколько иначе. Например в один прекрасный момент к тебе приходит, разработчик или пользователь и говорит что ему надо сделать какой то экзотический запрос и который валится с ошибкой снапшот ту олд. Увеличиваем undo до тех пор? пока проблема не рассосётся (ну конечно сначала смотрим что это за запрос и почему ему нужно столько undo). И так несколько раз. Затем выясняется что работа была разовая и больше undo такого размера в обозримом будущем вам не понадобится, а с местом как назло всё не очень хорошо, а может оказаться что даже совсем плохо. И вот тут возникает желание посжимать всяческие ТП и первый кандидат на это огромный пустой undo. Сценарии могут быть разные, у меня был и такой вариант.

На счёт отсутствия активных сегментов в старом undo.
Вот именно так я и делал - создал новое undo изменил время удержания, проверил что нет активных сегментов и перевёл старое undo в ofline normal. И через некоторое время пощли ошибки что файл старого undo не может быть рид. Пришлось вернуть в online. Более того прошло уже недели 2, мы 2 раза БД перегружали, а попытка перевести старое undo в ofline по прежнему вызывает ошибку.

А вот с алгоритмом описанном мной ни разу никаких проблем не было.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39491615
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomКак не крути, а время от времени с undo приходится сталкиваться. Я рад за тех кто создал undo какого то размера и забыл о нём. И я был бы счастлив если бы у меня была такая ситуация. К сожалению на практике всё несколько иначе. Например в один прекрасный момент к тебе приходит, разработчик или пользователь и говорит что ему надо сделать какой то экзотический запрос и который валится с ошибкой снапшот ту олд. Увеличиваем undo до тех пор? пока проблема не рассосётся (ну конечно сначала смотрим что это за запрос и почему ему нужно столько undo). И так несколько раз. Затем выясняется что работа была разовая и больше undo такого размера в обозримом будущем вам не понадобится, а с местом как назло всё не очень хорошо, а может оказаться что даже совсем плохо. И вот тут возникает желание посжимать всяческие ТП и первый кандидат на это огромный пустой undo. Сценарии могут быть разные, у меня был и такой вариант.

На счёт отсутствия активных сегментов в старом undo.
Вот именно так я и делал - создал новое undo изменил время удержания, проверил что нет активных сегментов и перевёл старое undo в ofline normal. И через некоторое время пощли ошибки что файл старого undo не может быть рид. Пришлось вернуть в online. Более того прошло уже недели 2, мы 2 раза БД перегружали, а попытка перевести старое undo в ofline по прежнему вызывает ошибку.

А вот с алгоритмом описанном мной ни разу никаких проблем не было.
у тя каша в голове
размер undo, который нужен транзакции, с ошибкой снапшот ту олд никак не связан.
"время удержания" с возможностью корректного удаления андо никак не связано
ошибки при переводе андо в офлайн с перезагрузкой никак не связаны, они будут возникать постоянно
Так что либо держишь андо в онлайне, либо удаляешь
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492266
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DВА
Ну не надо нас маленьких дурить
А с чем же по вашему связан снапшот ту олд если не с undo? :-)

И ещё, поясните если такой грамотный, почему Oracle ругается на файл переведённого в oofine undo, если у него активных сегментов нет и 0 использованного места?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492321
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomА с чем же по вашему связан снапшот ту олд если не с undo? :-)
И ещё, поясните если такой грамотный, почему Oracle ругается на файл переведённого в oofine undo, если у него активных сегментов нет и 0 использованного места?
ORA-1555 возникает в следствие неудовлетворенной потребности в undo-векторах зафиксированных транзакций.
Потому после штатного (по завершении всех активных транзакций) удаления undo ts могут пострадать только запросы, точка синхронизации которых находится ранее даты фиксации последней транзакции, хранившей свои undo в удаляемом ts.
Ну и ретроспективные запросы (as of scn/timestamp).
Обычно это не проблема.
Сама база будет жить.
А по поводу второго вопроса - уважаема я DBA уже давала пояснения в этом топике 20655396 , не?
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492337
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomDВА
Ну не надо нас маленьких дурить
А с чем же по вашему связан снапшот ту олд если не с undo? :-)

И ещё, поясните если такой грамотный, почему Oracle ругается на файл переведённого в oofine undo, если у него активных сегментов нет и 0 использованного места?

я смотрю с процессом понимания у тебя тяжеловато )
...или у меня с процессом объяснений для начальных классов средней школы ))
тогда просто поверь на слово - удаляй андо и все будет хорошо )
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492796
VDom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrey_anonymousORA-1555 возникает в следствие неудовлетворенной потребности в undo-векторах зафиксированных транзакций.
Потому после штатного (по завершении всех активных транзакций) удаления undo ts могут пострадать только запросы, точка синхронизации которых находится ранее даты фиксации последней транзакции, хранившей свои undo в удаляемом ts.
Ну и ретроспективные запросы (as of scn/timestamp).


И что по вашему мнению это говорит что снапшот ту олд не связан с undo?

Ещё раз утверждаю, что начиная с версии Oracle в которой появилось TS undo, все ошибки типа снапшот ту олд связанны исключительно с размером undo. Бороться с этим можно разными способами - смотреть почему запрос так долго работает что данные устаревают, или просто увеличить размер undo - личное дело конкретного DBA. Далее эту тему я развивать не намерен.

DOMundo_retention если оно не guarantee, принципиально на целостность данных не влияет
Когда вы корректно удалили undo-тп и если совершенно случайно стартанутой до начала манипуляций с андо сессии понадобятся данные из старого андо, или флэшбэк-запрос захочет их увидеть,то получит snapshot too old, если сессия наступит на отложенную очистку блоков, то сочтет транзакции закомиченными.
А вот если вы перевели тп в офлайн, то ядро считает что у вас андо еще на месте и в перечисленных случаях ломанется его читать, на что вы и получите соответствующие ошибки.
Как будет с undo_retention guarantee - не знаю, советую проверить и поделиться )
Скорее всего просто до его истечения не сможете удалить тп.

Вы я вижу не в состоянии понять смысл заданного мной вопроса. То что ядро почему то считает что это файл ему нужен, это и ёжику понятно. Это равносильно утверждению что вода мокрая.
Я спрашиваю почему оно так считает, не смотря на то что всяческие ретеншены давно истекли и нет активных сегментов, при 0 использованного пространства. И главное как с этим бороться.

Если вы не можете ответить на данные вопросы, то не надо флудом заниматься. Я жду конкретных предложений.
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492801
vva638
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Проблемы с UNDOTBS
    #39492886
Фотография DВА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VDomЕсли вы не можете ответить на данные вопросы, то не надо флудом заниматься. Я жду конкретных предложений.
вконец молодежь оборзела )))
ему дали кучу ссылок , чуть напряги мозг почитай, не, оно видите ли ждет конкретных предложений
шоб разжевали и в рот положили
правда тоже не факт что прожует, скорее продолжит дальше свои фантазии развивать

Последняя попытка, если не поймешь, предложение одно - убить себя ап стенку )))
Оракл читает твой андо, потому что ему нужно
1. очистить грязные блоки
2. сгенерить ретроспективный запрос
Пока понятно?
Чуть-чуть напрягаем мозог и пытаемся осилить фразу:
после скидывании неочищенных блоков на диск , т.е блоков , в которых нет признака, закомичена изменившая их транзакция или нет, а есть только адрес андо-слота, который отвечает за этот момент, оракл больше не меняет их до тех пор, пока кто-то не захочет прочитать имеющиеся там данные. Когда этот кто-то видит, что блок грязный, он обязан проверить, закомичена ли транзакция или нет, а для этого прочитать слот в андо-тп. А вот тут ключевой момент - если андо корректно удалено, значит транзакция однозначно закомичена и больше ничего проверять не нужно, потому что иначе оракл не позволил бы его удалить. Если андо присутствует, значит нужно его прочитать. Как спрашивается прочитать андо в офлайне ? Вот твои ошибки.

Очень сложно для понимания пишу?
...
Рейтинг: 0 / 0
70 сообщений из 70, показаны все 3 страниц
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблемы с UNDOTBS
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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