суббота, 17 февраля 2018 г.

Исправление Bad Primary Chunk ошибки в СУБД Informix при отсутствии backup

Иногда удаётся провести интересные
лабораторные исследования.
Был бы только свободен стенд.


Внештатная ситуация

Цель данной работы было разобраться с критической ситуацией, когда у нас происходит падение СУБД из-за аварии с системой хранения данных, в данной работе это был дисковый ресурс отдающийся по iSCSI, и у нас нет на руках бекапа. Эта ситуация, что нет бекапа, не должна возникать в промышленной эксплуатации СУБД, но в качестве лабораторной работы было интересно оказаться в ситуации когда есть: упавший сервер и нет копии БД.

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

Что произошло?
В момент работы сервера СУБД отпадает подключенный по iSCSI диск, причем пропадает он не сразу весь. И при последующем подъёме СУБД успевает пометить ... отдельное табличное пространство с физическим журналом, как отключенное и упасть уже окончательно. Обычно, проводимые тесты с системами хранения данных на FC, SAS подключаемые к серверу через HBA давали положительные результаты восстановления, т.к. сервер просто провисал и ничего не успевал записать о состоянии своего дискового пространства. Тут — успел. Значит будем разбираться с последствиями, и ещё раз напомню, что IBM в такой ситуации советует один правильный способ поведения — восстановление из сохраненной копии.