Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по Интербейсу [D5, IB5.x]


Verta ©   (2004-10-05 16:49:00) 

Помогите пож-ста справиться с проблемкой:
При работе с InterBase-ской базой произошла ошибка. Backup возвращает ошибку:
gbak: ERROR: database file appears corrupt ()
gbak: ERROR:     wrong page type
gbak: ERROR:     page 37358 is of wrong type (expected 5, found 7)
gbak: ERROR:  gds_$receive failed
gbak: Exiting before completion due to errors
Можно как-нибудь реанимировать базу (или удалить из таблицы проблемные записи)?


vv_fran   (2004-10-06 08:11:00) [1]

Скачиваешь с http://www.ibsurgeon.com/эту прогу, меняешь тип страницы на требуемый, извлекаешь все метаданные (IBExpert -ом) и со скрипта создаешь БД по новой.


Romkin   (2004-10-05 18:50:00) [2]

Роман Снегирев  (05.10.04 18:03) [13] Ты так уверен, что у тебя было именно то же самое и именно по этой же причине?
У него просто индекс влез на страницу данных. Так что простой фикс вполне может помочь, и даже все данные останутся.


Роман Снегирев   (2004-10-05 18:10:00) [3]

ну вообщем если повезет метаданные он сохранит, просто я уже сталкивался с подобной проблемой


Johnmen   (2004-10-05 18:07:00) [4]

>ну разумеется не все данные, хотя бы частично.

Как ты сам понимаешь, БД - это не только данные ("пользовательские" данные). Но кое-что ещё. И этого ещё м.б. очень много...


Роман Снегирев   (2004-10-05 18:03:00) [5]

То есть, ты считаешь, что надергав и сохранив M записей из N, ты таким образом сохранишь/восстановишь БД ???????????????
:)

ну разумеется не все данные, хотя бы частично.
а вот это http://www.ibase.ru/devinfo/db_repair.htm
нужно забить куда подальше ибо все равно в данном случае не поможет


Romkin   (2004-10-05 17:57:00) [6]

Роман Снегирев  (05.10.04 17:51) [10] ???
http://www.ibase.ru/devinfo/db_repair.htm


Johnmen   (2004-10-05 17:56:00) [7]

>Роман Снегирев   (05.10.04 17:26) [6]

То есть, ты считаешь, что надергав и сохранив M записей из N, ты таким образом сохранишь/восстановишь БД ???????????????
:)


Роман Снегирев   (2004-10-05 17:51:00) [8]

НУ млиин. Началось.
IB5? Server Manager -> Maintenance -> Database validation

закончилось уже это давно у нормальных программистов


Romkin   (2004-10-05 17:48:00) [9]

НУ млиин. Началось.
IB5? Server Manager -> Maintenance -> Database validation


Роман Снегирев   (2004-10-05 17:45:00) [10]

ну тогда еще проще (если знаешь значение некоторого параметра), делаешь select ... from table where параметр!=значению некоторого параметра и копируешь результат в другую таблицу


Verta   (2004-10-05 17:32:00) [11]

дело в том, что на "кривую" запись невозможно переместиться, я просто знаю значение некоторого параметра у этих записей... а сама база состоит из 5 таблиц


Роман Снегирев   (2004-10-05 17:26:00) [12]

да забей ты на gfix -mend (Johnmen тебя плохому научит), вот когда ты перемещаесься на к-л запись которая кривая, ты запоминай ее ID, вообщем потом выбираещь все нормальные записи, копируешь их через ХП (или через Execute Statement) во временную таблицу и все (ну может конечно не совсем все) OK


Verta   (2004-10-05 17:20:00) [13]

можно по-подробнее... что такое gfix-mend?


Romkin   (2004-10-05 17:18:00) [14]

gfix -mend


Verta   (2004-10-05 17:01:00) [15]

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


Роман Снегирев   (2004-10-05 16:56:00) [16]

вешаться нужно,
ну а если серьезно, то открывай базу, выискивай кривые записи и сноси их, возможно чего нибудь получится. И брось ты этот IB5.x, переходи лучше на FB1.5


Johnmen   (2004-10-05 16:54:00) [17]

Нет проблемных записей. Есть поломанные страницы.
Реанимацией базы занимаются отдельные люди. И это стОит денег...


Наверх

Титульная страница Поиск, карта сайта Написать письмо