Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Informix Новый топик    Ответить
 New chunk after level 0  [new]
Daugava
Member

Откуда: Riga-Kiev-Gurzuf
Сообщений: 718
Что-то народ заскучал. Попробую подкинуть тему для разговора. Триллер с
хепиэндом.

Ситуация. IDS 9.21.UC2 настроен 3 года назад. Небольшая базка из 67
чанков. Админ практически отсутствует, все крутится в автомате. Binary
архивы делаются ontape-ом.
Пт. - level0
Пн.-Чт. - level1
днем - logical log
+ раз в месяц все в текст
+ еженочно изменения за последний месяц в текст

В одну прекрасную субботу, в одном чудном dbspac-е места становится
маловато и создается 68-й чанк. Поскольку архивы делаются в автомате
level только за пятницу. В прекрасный вечер понедельника выясняется, что
выделенный жалкий чанк уже сожран, надо добавлять еще. Умелые руки
админа лихо запускают вместо только что подготовленного скрипта
makechunks, удачно положенный 3 года назад скрипт по имени makedummy,
предназначенный для создания пустых чанков на резервном сервере
(dd if=/dev/zero of=<chunks> ... ). Админ родился в рубашке, несмотря на
тугодумность (до Ctrl-C скрипт успел обнулить больше гигабайта), первыми
чанками оказались архивные таблицы и индексы.

Тут бы восстановится из архива, а фиг вам. 2.5 часа на подъем нуля,
потом еще 2 часа на прокрутку логов (в субботу была интенсивная работа
админа). При подъеме logical log-ов доходим до момента добавления чанка
и сюрпрайз (как настоящий Кулибин, админ доки не читает, но ж...
ситуацию чует).

Ontape предлагает: "suspend, commit, abort".
online.log:
00:15:27 Rollforward of log record failed. iserrno = 102
00:15:27 Log Record: log = 398636, pos = 1cf040, type =
OLDRSAM:ADDCHK(23), trans = 74
00:15:27 Rollforward of log record failed. iserrno = 102
00:15:27 Log Record: log = 398636, pos = 1cf040, type =
OLDRSAM:ADDCHK(23), trans = 74

Надо отметить, что "commit-abort" ничем не отличаются (сервер остается в
неподнимаемом состоянии). А "suspend" предоставляет возможность
поигравшись с логами запустить logical restore по новой.

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

Выводы:
1. Поменял конфигурацию сервера - сделай 0.
2. Вот когда начинаешь жалеть, что мирроринг сделан средствами RAID-a, а
не informix-a.

Вопросы:
Я правильно понимаю, что если бы я использовал onbar, то кроме может
несколько более быстрого восстановления и возможности накатиться до
времени подключения чанка, ничего бы не изменилось? Т.е. добавление
чанка все равно требовало бы level-0.
12 апр 05, 18:28    [1462308]     Ответить | Цитировать Сообщить модератору
 Re: New chunk after level 0  [new]
cpr
Member

Откуда: Rostov-on-Don
Сообщений: 762
ага
изменил конфигурацию пространства - сделай архив нулевого уровня, это как умываться утром :-)

У меня правда при наличии ХАДР точно не забудешь ;-)
12 апр 05, 21:02    [1462667]     Ответить | Цитировать Сообщить модератору
 Re: New chunk after level 0  [new]
Andron
Member

Откуда: Cherepovets
Сообщений: 1816
Вопросы:
Я правильно понимаю, что если бы я использовал onbar, то кроме может
несколько более быстрого восстановления и возможности накатиться до
времени подключения чанка, ничего бы не изменилось? Т.е. добавление
чанка все равно требовало бы level-0.


Level-0 после добавления чанка делать надо, это не зависит от метода бэкапа (ontape, onbar).
Конечно не очень понятно почему бы информиксу в процессе восстановления самому не создавать чанки, добавленные после level-0 (при наличии устройств), ведь записи о добавлении в логическом журнале отмечаются (тип записи ADDDBS или ADDCHK в логическом журнале, см. Admin Reference)
13 апр 05, 09:15    [1463112]     Ответить | Цитировать Сообщить модератору
 Re: New chunk after level 0  [new]
vasilis
Member

Откуда: Украина, Киев
Сообщений: 2205
Daugava
+ раз в месяц все в текст
+ еженочно изменения за последний месяц в текст

первое, наверное, dbexport ? Сколько часов идет ?
А вот второе - как ?
Unload по таблицам своим скриптом с фильтрацией по датам ?
Или просто есть свой софт, который для этого написан ?
13 апр 05, 19:55    [1466258]     Ответить | Цитировать Сообщить модератору
 Re: New chunk after level 0  [new]
Daugava
Member

Откуда: Riga-Kiev-Gurzuf
Сообщений: 718
И 1-е и 2-е одним и тем же скриптом (sh,awk,dbaccess-unload).
dbexport к сожалению идет в сад, у меня достаточно много таблиц, которые даже в тексте больше 2Гб. Сколько точно времени уходит на выгрузку сказать не могу, у меня в протоколе только старт-финиш, а там еще архивирование и пересылка на удаленную площалку.
Полез рыться нашел еще один бекап на этом же скрипте. "Полная версия БД + последние полгода". 3.5Гб unl-ов - 1 час 10 минут (из них 24 минуты потраченны на создание маленького 1.7Гб хвостика таблицы из 211млн. записей).
13 апр 05, 22:09    [1466417]     Ответить | Цитировать Сообщить модератору
Все форумы / Informix Ответить