|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Типовой вопрос на том же StackOverflow - это попытка подключить откуда-то полученный GDB-файл к PHP/Apache/MySQL ни IB ни FB на машине не стоит, и вообще, а что это такое??? Понятно, что первым делом надо определиться в формате файла, БД ли это вообще, а если БД - то какого сервера и какой версии. Открываю я в FirstAID какую-то базу и вижу два потенциально интересных места. file open logIBSurgeon FirstAID - Extractor 5.0.2 started at 12.11.2018 12:40:55 [1] 12:41:07.507 Info> Open database files: D:\TEST.FDB [2] 12:41:07.574 Info> File ODS major: 32779; ODS minor: 1; Page size: 4096 DirectDiagnose log12:48:17 INFO: ------------------- Starting diagnose 12:48:17 INFO: Running procedure: Header page check 12:48:17 INFO: ODS Major = 11 (32779) 12:48:17 INFO: ODS Minor = 1 Кстати о консистентности... Если я нажимаю кнопку Direct Diagnose - то текст получаю во вкладку Direct Fix log, а если я нажимаю кнопку Direct Fix - то текст не получаю никуда. Это довольно забавно Да, я по старой памяти помню, что FB добавляет в ODS Major 32768, а Yaffil кажется - 0xFFFF0000 Но чайнику бы хорошо понять какую версию сервера ему надо (в случаe ODS 10.x - c учётом endianess и разрядности). Заодно у First Aid будет ещё один вектор распространения: первая утилита, которую ставят чайники, впервые столкнувшиеся с GDB-файлами. Сервер он себе потом поставит, а First Aid на компьютере останется и при первой проблеме будем ему намекать куда обращаться. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 12:52 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, я как-то привык к gfix и статья есть, на русском http://www.ibase.ru/prevver/ и на английском https://ib-aid.com/en/articles/all-firebird-and-interbase-on-disk-structure-ods-versions/ кроме ИБ и ФБ есть еще RedDatabase, у которой major ODS пишется с другим флагом, не как у последних ФБ. Но значение флага не помню (где-то записано, но лень копать). С другой стороны, чтобы вынуть gfix, надо скачать какой-то zip с ФБ, как минимум. А FirstAid - да, может в хозяйстве всяко пригодиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 12:58 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Хорошо бы ещё, чтобы эта фишка была в IBExpert Personal и в IBExpert Database Inside (там, кстати, хотя бы семейство пишется "ODS: 11 (Firebird)" У FirestAID жу в статусбаре пишется типа ODS:32779.1 - и всё, во ттуда бы всплывающую подсказку или кнопку [?] с более подробной информацией. Раньше у Firebird было просто: ставь 2.5.последнюю и пытайся прочитать, в 99% случаев работало. А сейчас появился 3.0, а в нём ещё появились шифро-плагины.... Ну и для старых БД вопросы разрядности и порядка байт остаются. Вот просто представь себе ступор чайника, на которого всё это "наследие предков" вываливается. kdvкроме ИБ и ФБ есть еще RedDatabase, у которой major ODS пишется с другим флагом Ну если уж ты не помнишь..... Кстати, про Yaffil я таки не угадал. Колебался-колебалcя, сколько он прибавляет $ffff0000 или $ff00 - и таки выбрал неправильно. ...а ведь был ещё и Fyracle. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:06 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
kdvи статья есть Есть, я её упомянул. Среди прочего барахла. https://stackoverflow.com/a/53259334/976391 И это, заметь, я ещё не касался Interbase, у которго хз какие свои тараканы по совместимости версий могут тоже быть. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:09 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Ariochkdvи статья естьЕсть, я её упомянул. Среди прочего барахла... и с ошибкой: Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:17 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, в чём именно ошибка? я говорил не про "какая версия создает таки файлы", а про "какую версию сервера ставить, чтобы PHP читал БД" ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:32 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch...а ведь был ещё и Fyracle. кому он сейчас нужен? Насколько я знаю его никто в продакшн не использовал. Штука была сделана как эксперимент и отработка нескольких новых фич. Все чисто SQL плюшки от туда уже давно портировали (CTE, временные таблицы, UDR), а PL/SQL всё равно работало так себе ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:47 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, ты бы ещё Вулкан вспомнил. Вот Yaffil другое дело, на нём реальные проекты были написаны, у некоторых до сих пор крутится ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:51 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
AriochКстати, про Yaffil я таки не угадал. потому что Yaffil никаких флагов в ODS major не добавляет. У него формат абсолютно совместимый с FB 1.5 и IB 6.0. Так что у Yaffil ODS 10 (10.0). А вот у RedDatabase добавляется x6000 (два старших бита в 1), например, 24578.3 - это ODS 10.3, или 2.3, для кода, "параллельного" ФБ 2.х. Как там у них сейчас gstat выводит, и какой ODS у версий 2.6 и 3.0 - не знаю, а для скачивания архива требуется регистрация (не хочу). ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:53 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, забыл написать про Fyracle и Vulcan. Их установки или шансы напороться на базу от них настолько ничтожны (единичны), что нет никакого смысла узнавать их ODS, даже если он отличается. Потому что если отличается, то сделать с этими базами уже практически ничего нельзя :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 13:56 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Симонов Денис, Вулкан - часть MySQL и у него в двоичном формате никакой совместимости с GDB не было вроде бы. Во всяком случае Джим про него писал, что "версионность на практике хорошо аботает только в памяти, но не на диске" ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 14:02 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
kdvПотому что если отличается, то сделать с этими базами уже практически ничего нельзя ну хотя бы подсказать человеку "чяво ему искать" - уже не ничего но то, что это исключительно редкие случаи - согласен ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 14:03 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, у тебя не верная информация. Вулкан частично лёг в основу Firebird 3.0, но переработан довольно сильно. А в MySQL ни куска кода вулкана нет, разве что некоторые идеи позаимствованы. Да и то насколько мне известно этот движок (фалькон) так до сих пор не используется. Очередной брошенный эксперимент Джима ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 14:12 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
AriochВулкан - часть MySQLСмешно ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 14:31 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Ariochв чём именно ошибка?SOssuming you learned ODS and you checked that is Firebird's ODS not Interbase's ODS the next junction would be: Код: plaintext 1. 2.
P.S. В хрюниксах это сложнее, но "в винде" нет никакой проблемы поставить "зоопарк версий" и методом научного тыка выбрать нужный Firebird: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 14:50 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, И давно FB 2.5 разучился читать ODS 11.0 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 16:09 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Симонов Денис, да, забыл какое имя что обозначало, интерес был чисто теоретическим и довольно давно ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 16:10 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
AriochИ давно FB 2.5 разучился читать ODS 11.0 ?Это никого не колышет. У каждого сервера есть "родная" ODS, но, вместо того, чтобы "огласить весь список", вы публикуете нечто "очень похожее на правду". ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 16:52 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Basil A. Sidorov, вы не правы, ТОЛЬКО это и колышет. ссылку на "полный список" я тоже дал, вот он как раз на StackOverflow не колышет в 90% случаев короче, 21731738 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 16:54 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, какие может читать это довольно расплывчатое понятие. Оно может и прочтёт, но работать будет с ошибками. И да есть коммерческие движки (engine11.dll) для Firebird 3.0, которые позволяют работать ODS 11.2 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 16:59 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Симонов Денис, не помню у кого видел, сейчас уже найти не могу ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 17:05 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисОно может и прочтёт, но работать будет с ошибками. Официально заявлена работа без ошибок. Ошибки насколько помню возникают, когда потом такую БД пытаются снвоа использовать в серверах младших версий. Хотя, конечно, и их бы не должно было бы быть... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 17:28 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Симонов Денисесть коммерческие движки (engine11.dll) для Firebird 3.0 забиваю в Гугл "engine11.dll firebird 3.0" - и нахожу только три письма в fb-devel было бы оно коммерческим - сразу бы выскочило, да ещё бы начало рекламой заваливать :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 17:30 |
|
FirstAID - хотелка для чайников - явное определение версии сервера
|
|||
---|---|---|---|
#18+
Arioch, я точно видел, но теперь сам нагуглить не могу. Может конечно приснилось ... |
|||
:
Нравится:
Не нравится:
|
|||
12.11.2018, 17:39 |
|
|
start [/forum/topic.php?fid=40&msg=39731730&tid=1560909]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
165ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 320ms |
total: | 585ms |
0 / 0 |