Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30 / 10 сообщений из 10, страница 1 из 1
21.02.2015, 14:24
    #38885630
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
hi all.

На золотом крыльце сидели:
1) fb 2.5
2) fb 3.0
(и сбоку еще 2.1, но не про него речь :-))

В 2.5 была создана базейка, которая далее была сбекаплена его же силами в .fbk

Копирую этот .fbk в пустой каталог и делаю там:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
C:\TEMP\fbk>dir *.*
 Содержимое папки C:\TEMP\fbk

21.02.2015  14:13    <DIR>          .
21.02.2015  14:13    <DIR>          ..
21.02.2015  14:01             2 048 core3579.fbk
                1  файлов          2 048 байт
               2 папок  75 930 877 952 байт свободно

 -- Ресторим файл силами ФБ 3.0: 
C:\TEMP\fbk>C:\MIX\firebird\fb30\gbak -z -rep core3579.fbk core3579.fdb
gbak:gbak version WI-T3.0.0.31655 Firebird 3.0 Beta 2
gbak:    Version(s) for database "core3579.fdb"
        Firebird/Windows/Intel/i386 (access method), version "WI-T3.0.0.31655 Firebird 3.0 Beta 2"
        on disk structure version 12.0

 -- проверяем, что всё отресторилось ОК: 
C:\TEMP\fbk>C:\MIX\firebird\fb30\gstat -h core3579.fdb

Database "C:\TEMP\FBK\CORE3579.FDB"
Database header page information:
        Flags                   0
        Generation              15
        System Change Number    0
        Page size               4096
        ODS version             12.0
        Oldest transaction      1
        Oldest active           2
        Oldest snapshot         2
        Next transaction        7
        Sequence number         0
        Next attachment ID      6
        Implementation          HW=Intel/i386 little-endian OS=Windows CC=MSVC
        Shadow count            0
        Page buffers            0
        Next header page        0
        Database dialect        3
        Creation date           Feb 21, 2015 14:14:02
        Attributes              force write

    Variable header data:
        Sweep interval:         20000
        *END*


 -- Теперь пробуем перетереть результат рестора силами 2.5: 
C:\TEMP\fbk>C:\MIX\firebird\fb25\bin\gbak -z -rep core3579.fbk core3579.fdb

 -- И получаем по лбу: 
gbak:gbak version WI-V2.5.4.26838 Firebird 2.5
gbak: ERROR:I/O error during "CreateFile (create)" operation for file "C:\TEMP\FBK\CORE3579.FDB"
gbak: ERROR:    Error while trying to create file
gbak: ERROR:    Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.
gbak: ERROR:failed to create database core3579.fdb
gbak:Exiting before completion due to errors

 -- Пробуем удалить файлик базы: 
C:\TEMP\fbk>del *.fdb

 -- И он почему-то удалился, хотя вроде бы был только что занят: 
C:\TEMP\fbk>C:\MIX\firebird\fb25\bin\gbak -z -rep core3579.fbk core3579.fdb
gbak:gbak version WI-V2.5.4.26838 Firebird 2.5
gbak:    Version(s) for database "core3579.fdb"
        Firebird/x86/Windows NT (access method), version "WI-V2.5.4.26838 Firebird 2.5"
        Firebird/x86/Windows NT (remote server), version "WI-V2.5.4.26838 Firebird 2.5/XNet (CSPROG)/P12"
        Firebird/x86/Windows NT (remote interface), version "WI-V2.5.4.26838 Firebird 2.5/XNet (CSPROG)/P12"
        on disk structure version 11.2

C:\TEMP\fbk>C:\MIX\firebird\fb25\bin\gstat -h core3579.fdb

Database "core3579.fdb"
Database header page information:
        Flags                   0
        Checksum                12345
        Generation              15
        Page size               4096
        ODS version             11.2
        Oldest transaction      1
        Oldest active           2
        Oldest snapshot         2
        Next transaction        7
        Bumped transaction      1
        Sequence number         0
        Next attachment ID      2
        Implementation ID       16
        Shadow count            0
        Page buffers            0
        Next header page        0
        Database dialect        3
        Creation date           Feb 21, 2015 14:15:08
        Attributes              force write

    Variable header data:
        Sweep interval:         20000
        *END*


Что это было ?
...
Рейтинг: 0 / 0
21.02.2015, 14:48
    #38885640
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
ТаблоидЧто это было ? А что ты пробовал исследовать, перед тем как вопить в сюда ?
...
Рейтинг: 0 / 0
21.02.2015, 15:10
    #38885650
dimitr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
"перетереть" это по сути сделать DROP DATABASE. Каким макаром ФБ 2.5 должна по твоему подключиться к базе от ФБ 3.0?
...
Рейтинг: 0 / 0
21.02.2015, 22:40
    #38885779
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
hvladТаблоидЧто это было ? А что ты пробовал исследовать, перед тем как вопить в сюда ?то, что показал, плюс "обратку": сначала ресторил с 2.5 и затем пробовал ресторить с 3.0 поверх, т.е. с тем же "-rep", - и этот вариант прокатывает.
Я *не* уверен, бага это или нет, потому и спросил сюда.

И, глядя в следующий ответ ДЕ:dimitr"перетереть" это по сути сделать DROP DATABASE. Каким макаром ФБ 2.5 должна по твоему подключиться к базе от ФБ 3.0? -- совсем не понимать: с какого будуна "-rep" стал равен "drop database"! Почему gbak не в состоянии просто вызвать ferase() ?

ЗЫ. Главный вопрос остался без ответа: если файл (.fdb) был занят, то как я его смог спокойненько так удалить ?
...
Рейтинг: 0 / 0
21.02.2015, 22:52
    #38885781
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
ТаблоидПочему gbak не в состоянии просто вызвать ferase() ?

да хотя бы потому что подключаться он может не только локально
...
Рейтинг: 0 / 0
21.02.2015, 23:01
    #38885784
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
Таблоид
Код: plaintext
1.
 -- Теперь пробуем перетереть результат рестора силами 2.5: 
C:\TEMP\fbk>C:\MIX\firebird\fb25\bin\gbak -z -rep core3579.fbk core3579.fdb
где здесь подключение "не локально" ? Что вообще есть "-rep" ключ как не " replace " ?
...
Рейтинг: 0 / 0
21.02.2015, 23:05
    #38885785
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
ТаблоидПочему gbak не в состоянии просто вызвать ferase() ?
Чтобы каждый мог сделать "gbak -rep aaa.fbk kernel32.dll"?.. Нах-нах.

ТаблоидЗЫ. Главный вопрос остался без ответа: если файл (.fdb) был занят, то как я
его смог спокойненько так удалить ?

Очередная фича, которую мелкомягкие слизали с линуха. Свежие форточки позволяют удалять
открытые файлы.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
21.02.2015, 23:48
    #38885803
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
Dimitry SibiryakovЧтобы каждый мог сделать "gbak -rep aaa.fbk kernel32.dll"?.. Нах-нах.А вот фих-фих!
Ибо:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
G:\TEMP\logs.oltp30>ver

Microsoft Windows XP [Версия 5.1.2600]

G:\TEMP\logs.oltp30>dir %systemroot%\system32\kernel32.dll | findstr /i /c:"kernel32.dll"
14.04.2008  20:40           995 840 kernel32.dll

G:\TEMP\logs.oltp30>del %systemroot%\system32\kernel32.dll
C:\WINNT\system32\kernel32.dll
Отказано в доступе.

G:\TEMP\logs.oltp30>echo tralyala>%systemroot%\system32\kernel32.dll
Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.


И так тоже не прокатит:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
G:\1INSTALL\FB253\bin>isql.exe
Use CONNECT or CREATE DATABASE to specify a database
SQL> create database 'ttt.fdb'; commit; exit;

G:\1INSTALL\FB253\bin>gbak -b TTT.FDB TTT.fbk


G:\1INSTALL\FB253\bin>gbak -rep TTT.fbk %systemroot%\system32\kernel32.dll
gbak: ERROR:I/O error during "CreateFile (create)" operation for file "C:\WINNT\SYSTEM32\KERNEL32.DLL"
gbak: ERROR:    Error while trying to create file
gbak: ERROR:    ╧ЁюЎхёё эх ьюцхЄ яюыєўшЄ№ фюёЄєя ъ Їрщыє, Єръ ъръ ¤ЄюЄ Їрщы чрэ Є фЁєушь яЁюЎхёёюь.
gbak: ERROR:failed to create database C:\WINNT\system32\kernel32.dll
gbak:Exiting before completion due to errors
...
Рейтинг: 0 / 0
21.02.2015, 23:53
    #38885806
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
ТаблоидИбо:
У тебя нет привилегий системного аккаунта под которым по умолчанию запускается сервис
Firebird.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
22.02.2015, 09:48
    #38885870
Шавлюк Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30
Dimitry SibiryakovЧтобы каждый мог сделать "gbak -rep aaa.fbk kernel32.dll"?.. Нах-нах.
А что нам сейчас запрещает сделать
"gbak -b aaa.fdb kernel32.dll" ?
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gbak от 2.5 с "-rep" не может перетереть .fdb, если перед этим он ресторился gbak'ом от 30 / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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