поломка индексов
Модераторы: kdv, Alexey Kovyazin
поломка индексов
Добрый день!
Имеетсяв наличии база под управлением InterBase 7.0 размер базы примерно 700-800 метров.
Бэкап проводится каждый день. Случае неожиданной остановки InterBase сервера в наличии были.
Проблема: получаю невосстановимый бэкап.
При восстановлении выдает ошибку:
gbak: creating indexes
gbak: cannot commit index RDB$FOREIGN51
gbak: ERROR: attempt to store duplicate value (visible to active transactions) in unique index "RDB$PRIMARY51"
IBE: Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
action cancelled by trigger (3) to preserve data integrity.
Cannot deactivate primary index.
IBE: Restore completed. Current time: 16:47:39. Elapsed time: 00:05:17
При проведении gfix -v -full выдает ошибки:
Number of index page errors 16
Number of database page errors 1
gfix -mend обнаруживает те же ошибки, но ничего сделать не может.
При востановлении базы из бэкапа с деактивированными индексами - все восстанавливает. Правда я не заню как активировать индексы на первичные и внешние ключи. А без них ой как плохо
помогите пожалуйста.
IBPump ни разу не пользовалась, и не хотелось бы пользоваться
Имеетсяв наличии база под управлением InterBase 7.0 размер базы примерно 700-800 метров.
Бэкап проводится каждый день. Случае неожиданной остановки InterBase сервера в наличии были.
Проблема: получаю невосстановимый бэкап.
При восстановлении выдает ошибку:
gbak: creating indexes
gbak: cannot commit index RDB$FOREIGN51
gbak: ERROR: attempt to store duplicate value (visible to active transactions) in unique index "RDB$PRIMARY51"
IBE: Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
action cancelled by trigger (3) to preserve data integrity.
Cannot deactivate primary index.
IBE: Restore completed. Current time: 16:47:39. Elapsed time: 00:05:17
При проведении gfix -v -full выдает ошибки:
Number of index page errors 16
Number of database page errors 1
gfix -mend обнаруживает те же ошибки, но ничего сделать не может.
При востановлении базы из бэкапа с деактивированными индексами - все восстанавливает. Правда я не заню как активировать индексы на первичные и внешние ключи. А без них ой как плохо
помогите пожалуйста.
IBPump ни разу не пользовалась, и не хотелось бы пользоваться
забыла добавить
ОС - windows 2003 server sp1
еще данные
PageSize = 8192
Проверка IBFirstAID на мой непрофессиональный взгляд - ошибок не выявила - во всяком случае во всех логах кроме OK ничего плохого не нашла
Проверка IBFirstAID на мой непрофессиональный взгляд - ошибок не выявила - во всяком случае во всех логах кроме OK ничего плохого не нашла
проблема решена
посмотрела логи, в таблицах, которые были там указаны - обнаружилосьдублирование записей с одинаковым занчением первичного ключа.
Причем данные относятся примерно к одному временному промежутку.
Удалила первичный ключ, раскидала записи, поправила генераторы, восстановила первичный ключ.
Все вылечилось.
Спасибо всем
Причем данные относятся примерно к одному временному промежутку.
Удалила первичный ключ, раскидала записи, поправила генераторы, восстановила первичный ключ.
Все вылечилось.
Спасибо всем
всегда пожалуйста. надо было читать www.ibase.ru/devinfo/db_repair.htm
в данном случае повреждения базы привели к появлениям логических ошибок. Которые разумеется, диагност IBFirstAid не обнаружит.
в данном случае повреждения базы привели к появлениям логических ошибок. Которые разумеется, диагност IBFirstAid не обнаружит.