У нас есть система Sun Solaris с программным обеспечением Avaya CMS. Программное обеспечение использует базу данных Informix. У нас на сервере всего один диск. Накопитель стал выходить из строя, файлы портились. Мы получили новый диск и смогли скопировать данные со старого диска на новый и успешно запустить сервер. Однако у нас осталась проблема в том, что база данных сообщает о плохих фрагментах и не записывает новые данные.
Как это исправить? Это просто команда Informix для выполнения или нам нужно освободить и перераспределить хранилище базы данных?
IBM Informix Dynamic Server версии 9.40.UC4
РЕДАКТИРОВАТЬ: мы на самом деле больше не заботимся о старых данных, просто мы хотим записать новые данные, но это не позволит нам. Как бы то ни было, чтобы это исправить?
Простые ситуации можно исправить с помощью oncheck
команда.
Но ваша ситуация и такого рода коррупция нет, как восстановить данные из «нуля».
Для этого вам нужно восстановить ваш архив + резервные копии логических журналов.
Затем вы восстановите все данные до последнего состояния до сбоя.
У вас есть ? хм .... Я почти уверен, что ты сейчас думаешь: ooopsss ...
Это минимум, который вы должны иметь в среде без избыточности оборудования.
Другой вариант для изучения после этого - настроить вашу базу данных для зеркалирования всех фрагментов на другом жестком диске ... таким образом, если один из них выйдет из строя, другой продолжит работу.
Прочтите этот пост https://stackoverflow.com/questions/19905391/why-informix-dbexport-is-generating-corrupt-data , может быть, это поможет тебе.
Если чанк поврежден, нет смысла писать что-либо поверх него.
Механизм очень ограничен в этой ситуации, чтобы гарантировать целостность данных.
Вы не сможете отбросить кусок, если в нем есть какие-то данные (учитывая, что в базе данных все еще указывается что-то).
Лучшее решение - экспортировать то, что не повреждено, в текстовый файл, воссоздать ваш экземпляр с нуля, создать базу данных, структуры и перезагрузить данные ...
Необходимо понимать, что эти продукты сделаны с ресурсами, чтобы гарантировать целостность данных, чтобы не уничтожить их (учитывая, что администратор правильно настроил их).
В качестве справки проверьте эти ссылки: