Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Испорченная БД / 25 сообщений из 54, страница 1 из 3
10.02.2016, 11:22
    #39167375
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Привет всем.

FB WI-V6.3.5.26952 CS

При подключении к БД из isql происходит следующее:
Код: powershell
1.
2.
3.
4.
SQL> connect localhost:c:\data\damage.fdb user SYSDBA password masterkey;
Statement failed, SQLSTATE = 08006
Unable to complete network request to host "localhost".
-Error writing data to the connection.



Без указания хоста:
Код: powershell
1.
2.
3.
SQL> connect c:\data\damage.fdb user SYSDBA password masterkey;
Statement failed, SQLSTATE = 08006
connection lost to database



Запускаю gfix:
Код: powershell
1.
2.
C:\FireBird\bin>gfix -mend -user SYSDBA -password masterkey c:\data\damage.fdb
connection lost to database



Если в IBExpert загрузить файл БД через Tools/Database Inside, то появляется вкладка Errors, на которой в гриде одна строка,
у которой Message:
Код: powershell
1.
Unsupported RDB$FORMATS record length: 20



Что именно произошло с БД, точно сказать не могу. Вроде бы при активных подключениях в несколько таблиц было добавлено целочисленное поле, которое сразу же апдейтилось в 0. Под активными подключениями понимается около 5-7 коннектов, которые массово апдейтят таблицы, в которые добавлялось поле. Размер БД 11 гигов. Более точной информации нету.

Эту БД можно вылечить каким-либо штатным способом?

P.S. Данные из БД не нужны - был восстановлен бэкап.

С уважением, Polesov.
...
Рейтинг: 0 / 0
10.02.2016, 13:18
    #39167542
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
PolesovПри подключении к БД из isql происходит следующее:
Что в firebird.log?

PolesovЭту БД можно вылечить каким-либо штатным способом?
Скорее всего - нет.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.02.2016, 13:33
    #39167556
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Dimitry SibiryakovЧто в firebird.log?
Увы, с момента порчи БД сервер (в смысле, железяка) был переустановлен. Логов нет.

PolesovЭту БД можно вылечить каким-либо штатным способом?
Dimitry SibiryakovСкорее всего - нет.

Кстати, забыл упомянуть - в окне Database Inside IBExpert-а список таблиц на вкладке Extract Data\Metadata пуст.
Судя по
Код: powershell
1.
Unsupported RDB$FORMATS record length: 20

безнадежно запорчена системная таблица RDB$FORMATS

Ну, а вообще такую БД вылечить как-либо можно?

С уважением, Polesov.
...
Рейтинг: 0 / 0
10.02.2016, 13:39
    #39167565
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Dimitry SibiryakovЧто в firebird.log?

Если вопрос был про содержимое лога на момент попытки подключения к битой БД:

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
WDWS12 (Client)	Wed Feb 10 10:51:00 2016
	INET/inet_error: read errno = 10054


WDWS12 (Client)	Wed Feb 10 10:54:07 2016
	XNET error: Server shutdown detected


WDWS12 (Client)	Wed Feb 10 10:55:35 2016
	INET/inet_error: read errno = 10054


WDWS12 (Client)	Wed Feb 10 11:13:31 2016
	XNET error: Server shutdown detected



С уважением, Polesov.
...
Рейтинг: 0 / 0
10.02.2016, 13:46
    #39167582
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
PolesovКстати, забыл упомянуть - в окне Database Inside IBExpert-а список таблиц на вкладке Extract Data\Metadata пуст.


Если невозможно прочитать RDB$FORMATS, смысла ковырять все остальное просто нет.
А базу можно поиметь?
...
Рейтинг: 0 / 0
10.02.2016, 13:48
    #39167585
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
PolesovНу, а вообще такую БД вылечить как-либо можно?
Теоретически - да. Воссоздать недостающий формат не так уж и сложно. Я думаю, ребята из
IBSurgeon справятся.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.02.2016, 13:53
    #39167589
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Polesov,

сервер просто падает, что в логе и показано

а размер файла какой. такое ощущение, что не "безнадежно запорчена системная таблица RDB$FORMATS" а вообще весь заголовок убит перехлёстом через 4 гб

какой конкретно сервер ib/fb стоял на старом серере
...
Рейтинг: 0 / 0
10.02.2016, 13:54
    #39167591
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
http://www.ibase.ru/devinfo/db_repair.htm#self

см. про размер файла БД
...
Рейтинг: 0 / 0
10.02.2016, 15:23
    #39167686
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
IBExpertА базу можно поиметь?

Думаю, что руководство не одобрит.
...
Рейтинг: 0 / 0
10.02.2016, 15:25
    #39167691
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Ariochа размер файла какой.

какой конкретно сервер ib/fb стоял на старом серере

БД - 11 гигов, FB WI-V6.3.5.26952 CS
...
Рейтинг: 0 / 0
10.02.2016, 15:28
    #39167698
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Ariochсм. про размер файла БД

Думаю, это не тот случай
...
Рейтинг: 0 / 0
10.02.2016, 16:09
    #39167751
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Classic Server...

кто-нибудь дуриком подсоеднилися старой версией Классика или embedded...

или расширение GDB

вообще коненчо хрен теперь разберешься
...
Рейтинг: 0 / 0
10.02.2016, 16:10
    #39167753
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
gstat - заголовок файла читает ?

http://www.ibase.ru/devinfo/getstat.htm
...
Рейтинг: 0 / 0
10.02.2016, 16:11
    #39167757
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
PolesovВроде бы при активных подключениях в несколько таблиц было добавлено целочисленное поле, которое сразу же апдейтилось в 0. Под активными подключениями понимается около 5-7 коннектов, которые массово апдейтят таблицы, в которые добавлялось поле.

ой блин, у вас же классик......

PolesovFB WI-V6.3.5.26952 CS
...
Рейтинг: 0 / 0
10.02.2016, 16:55
    #39167809
Roman Simakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Polesov,

при таких конкретных подозрениях на сценарий воспроизведения, я думаю все были бы вам благодарны, если бы вы смогли или хотя бы постарались воспроизвести эту поломку.
...
Рейтинг: 0 / 0
10.02.2016, 17:00
    #39167815
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Arioch, читает
...
Рейтинг: 0 / 0
10.02.2016, 17:09
    #39167826
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Ariochкто-нибудь дуриком подсоеднилися старой версией Классика или embedded...
Ну, что было (или были) подключения через FBClient предыдущей версии от FB 2.5.4 ненулевая вероятность имеется.
Подключение через Embedded гарантированно не возможно - его просто нет.

Произошло все это где-то во второй половине декабря прошлого года.
Человек, который мог бы рассказать, как все было, тут уже не работает.
Сервер был переустановлен с нуля. Осталась только битая база. Как-то так.

С уважением, Polesov.
...
Рейтинг: 0 / 0
10.02.2016, 17:14
    #39167833
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Polesovчерез FBClient предыдущей версии

ничего, дело не в клиенте, а в сервере: клиент к файлу БД доступа не имеет

судя по всему вы просто нарвались на изменение метаданных на работающей БД

это крайне не рекомендуется на SuperServer и в принципе запрещено на Classic'ах

а у вас, вы выше, написали "CS"
...
Рейтинг: 0 / 0
10.02.2016, 17:17
    #39167837
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Roman SimakovPolesov,

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

Ну, сценарий не замысловат - имеется 5-7 коннектов, которые массово апдейтят, ну скажем 5 таблиц. В это время в эти таблицы добавляется целочисленное поле not null. После добавления поле в рамках, скажем так DDL-ного коннекта, апдейтится в 0. В какой-то момент новый коннект к БД не возможен.

Думаю, подобный сценарий можно легко воспроизвести - вопрос, сломается ли при этом БД?

Кстати, тут же на форуме нашел идентичный случай
http://www.sql.ru/forum/1167594/kakov-mehanizm-porchi-bazy?hl=ques

С уважением, Polesov.
...
Рейтинг: 0 / 0
10.02.2016, 19:35
    #39168002
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
PolesovДумаю, подобный сценарий можно легко воспроизвести - вопрос, сломается ли
при этом БД?
Делать создание/изменение таблицы и добавление/изменение данных в ней в одной транзакции -
известный и надёжный способ сломать БД.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
10.02.2016, 19:54
    #39168011
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Dimitry Sibiryakovсоздание/изменение таблицы и добавление/изменение данных в ней в одной транзакции

Ну, в данном случае транзакции были все же разные.
Понятно, что применять DDL при наличии активных коннектов не есть хорошо...
...
Рейтинг: 0 / 0
10.02.2016, 20:22
    #39168028
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Polesovв данном случае транзакции были все же разные.
Уверен? И несколько изменений одной таблицы в одной транзакции тоже не было?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
11.02.2016, 09:53
    #39168274
Polesov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Dimitry Sibiryakovнесколько изменений одной таблицы в одной транзакции тоже не было?


Что подразумевается под "изменений одной таблицы в одной транзакции"?
Если транзакция на массовый апдейт таблицы, в течение активности которой
был применен DDL, то вполне возможно.
...
Рейтинг: 0 / 0
11.02.2016, 09:58
    #39168277
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Dimitry SibiryakovДелать создание/изменение таблицы и добавление/изменение данных в ней в одной транзакции -
известный и надёжный способ сломать БД.
попробуй создать таблицу и залить в нее данные в той же транзакции. О результатах доложи.
...
Рейтинг: 0 / 0
11.02.2016, 12:02
    #39168398
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Испорченная БД
Polesov,

несколько последовательных DDL

например добавить столбец, а потом добавить еще один столбец computed by по предыдущему

хотя на мое imho достаточно "классика" с изменением метаданных на лету
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Испорченная БД / 25 сообщений из 54, страница 1 из 3
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]