SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » Firebird, HQbird, InterBase » Поломка базы. Нужна помощь
Поломка базы. Нужна помощь [сообщение #3999] Fri, 05 January 2024 10:51 Переход к следующему сообщению
Док в настоящее время не в онлайне  Док
Сообщений: 101
Зарегистрирован: June 2022
Senior Member
Мужики, всех с НГ!

Наконец-то за 15 лет впервые сломалась база.
Бекап:
C:\firebird\fb_3_0_10_x64\gbak.exe -b -g -z -se 127.0.0.1/31064:service_mgr D:\Archive\Databases\general_base
\test\GENERAL_BASE_2023_10_new_FB30.FDB D:\Archive\Databases\general_base\test\test.FBK -v -y D:\temp
\qwerty_restore.TXT -user sysdba -pass ****
<skiped>
2024.01.05 10:08:49:229 gbak:writing exceptions 
2024.01.05 10:08:49:261 gbak:writing exception N1_NO_DELETE_ZERO_IDSERVICEINFO 
2024.01.05 10:08:49:292 gbak:writing exception N2_NO_DELETE_MKB_10 
2024.01.05 10:08:49:323 gbak:writing exception N3_NO_EMPTY_ANKETA_DELETE 
2024.01.05 10:08:49:354 gbak:writing exception N4_NO_EMPTY_DOCTOR_DELETE 
2024.01.05 10:08:49:386 gbak:writing exception N5_NO_EMPTY_TOWN_DELETE 
2024.01.05 10:08:49:417 gbak:writing exception N6_NO_EMPTY_BASEPRICE 
2024.01.05 10:08:49:448 gbak:writing exception N7_NO_VALID_COST 
2024.01.05 10:08:49:479 gbak:writing exception N8_NO_EMPTY_CLINIC_DELETE 
2024.01.05 10:08:49:511 gbak:writing exception NA_01_NO_EMPTY_DOCTOR_DELETE 
2024.01.05 10:08:49:542 gbak: ERROR:internal Firebird consistency check (wrong record length (183), file: vio.cpp 
line: 1466)
2024.01.05 10:08:49:573 gbak: ERROR:    gds_$receive failed
2024.01.05 10:08:49:604 gbak: ERROR:    Exiting before completion due to errors
2024.01.05 10:08:49:636 gbak:Exiting before completion due to errors
Попытка диагностики (на копии актуальной базы)
$ gfix -v -full d:\Archive\Databases\general_base\test\GENERAL_BASE_2023_10_new_FB30.FDB
I/O error during "ReadFile" operation for file "D:\ARCHIVE\DATABASES\GENERAL_BASE\TEST\GENERAL_BASE_2023_10_NEW_FB30.FDB"
-Error while trying to read from file
-Достигнут конец файла.
-internal Firebird consistency check (cannot find tip page (165), file: tra.cpp line: 2347)
gfix -mend выдает то же сообщение.

Куды копать?

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






FPC/Lazarus (trunk) | Win10 x64 Ultim/Debian 11 amd64/Darwin x86_64 Monterey | Firebird 3.0.10 x64 | IBX by TonyWhyman

https://zoltanleo.blogspot.com/
Re: Поломка базы. Нужна помощь [сообщение #4000 является ответом на сообщение #3999] Fri, 05 January 2024 11:05 Переход к предыдущему сообщениюПереход к следующему сообщению
Док в настоящее время не в онлайне  Док
Сообщений: 101
Зарегистрирован: June 2022
Senior Member
Если сделать так:
gbak.exe -b -g -ig -nod ...
то выхлоп немного другой
<skiped>
2024.01.05 11:02:17:883 gbak:writing exception N8_NO_EMPTY_CLINIC_DELETE 
2024.01.05 11:02:17:914 gbak:writing exception NA_01_NO_EMPTY_DOCTOR_DELETE 
2024.01.05 11:02:17:944 gbak:writing exception NA_02_NO_EMPTY_CLINIC_DELETE 
2024.01.05 11:02:17:975 gbak:writing exception NA_03_NO_LABORISSUE_DELETE 
2024.01.05 11:02:18:006 gbak:writing exception NA_04_USE_LATIN_ALPHABET 
2024.01.05 11:02:18:037 gbak:writing exception NA_05_NO_EMPTY_TBL_SHEDULE 
2024.01.05 11:02:18:068 gbak:writing functions 
2024.01.05 11:02:18:099 gbak:writing stored procedures 
2024.01.05 11:02:18:131 gbak:writing packages 
2024.01.05 11:02:18:161 gbak:    writing index RDB$PRIMARY1 
2024.01.05 11:02:18:169 gbak: ERROR:internal Firebird consistency check (wrong record length (183), file: vio.cpp line: 1466)
2024.01.05 11:02:18:177 gbak: ERROR:    gds_$receive failed
2024.01.05 11:02:18:208 gbak: ERROR:    Exiting before completion due to errors
2024.01.05 11:02:18:239 gbak:Exiting before completion due to errors
Ы?


FPC/Lazarus (trunk) | Win10 x64 Ultim/Debian 11 amd64/Darwin x86_64 Monterey | Firebird 3.0.10 x64 | IBX by TonyWhyman

https://zoltanleo.blogspot.com/
Re: Поломка базы. Нужна помощь [сообщение #4001 является ответом на сообщение #4000] Fri, 05 January 2024 12:35 Переход к предыдущему сообщениюПереход к следующему сообщению
basid в настоящее время в онлайне  basid
Сообщений: 167
Зарегистрирован: June 2022
Географическое положение: Asia/Irkutsk
Senior Member
First, database should be scanned with FirstAID Diagnostician.
If FirstAID does not warn about serious corruption, corruption can be fixed with full version of FirstAID.
Re: Поломка базы. Нужна помощь [сообщение #4002 является ответом на сообщение #4001] Fri, 05 January 2024 12:58 Переход к предыдущему сообщению
Док в настоящее время не в онлайне  Док
Сообщений: 101
Зарегистрирован: June 2022
Senior Member
basid писал(а) Fri, 05 January 2024 12:35
First, database should be scanned with FirstAID Diagnostician.
If FirstAID does not warn about serious corruption, corruption can be fixed with full version of FirstAID.
Аг, спасибо за подсказку. Я почему-то думал, что он полностью платный.

Гляньте, плз, кому не лень. Ручками в базе это можно поправить, такскать, в бесплатном варианте? Если можн, то где и как?
  • Вложение: directfixlog.txt
    (Размер: 18.43KB, Загружено 265 раз)


FPC/Lazarus (trunk) | Win10 x64 Ultim/Debian 11 amd64/Darwin x86_64 Monterey | Firebird 3.0.10 x64 | IBX by TonyWhyman

https://zoltanleo.blogspot.com/
Предыдущая тема: Cursor stability. как его обойти
Следующая тема: Посчитать возраст
Переход к форуму:
  


Текущее время: Sun Dec 22 12:30:17 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00681 секунд