Autor Téma: Záloha FB 2.5  (Přečteno 333 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Záloha FB 2.5
« kdy: 01-12-2018, 22:38:05 »
Mám malú prosbu. Mád databázu FB 2.5 a potrebujem urobiť z nej urobiť zálohu, aj s údajmi. Aby som ju potom mohol previesť na FB 3
Skúsil som nainštalovať server FB 2.5, ale môjmu EMS manažérovi sa čosi nepáčilo. Či so tu inštaláciu urobil správne neviem. Server 3 som mal vypnutý.
Ďakujem
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1364
  • Karma: 57
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:Záloha FB 2.5
« Odpověď #1 kdy: 02-12-2018, 12:56:25 »
Dobre, ale jak s tim vsim mame nalozit? Z popisu jsem pochopil, ze selhal externi nastroj (jak?) pri backupu databaze serverem Firebird 2.5, jenz jsi dodatecne nainstaloval. Takze ta databaze nebyla vytvorena verzi 2.5?

Letmo dodam, ze je treba vytvaret zalohu databaze stejnou verzi serveru ve ktere vznikla. A ze by k migraci mel stacit jen nastroj gbak (samozrejme pro zalohu verze v niz databaze vznikla a pro obnovu verze do niz se ma obnovit).
« Poslední změna: 02-12-2018, 12:58:32 od Delfin »
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

Offline pf1957

  • Padawan
  • ******
  • Příspěvků: 2331
  • Karma: 125
    • Verze Delphi: D2007, XE3, DX10
Re:Záloha FB 2.5
« Odpověď #2 kdy: 02-12-2018, 13:21:41 »
A ze by k migraci mel stacit jen nastroj gbak
Ja bych se taky zdrahal na tyhle zalezitosti pouzivat neco od 3. strany. Nadelal jsem batche a ty spoustim, pro inspiraci:
Kód: Text [Vybrat]
  1. @       echo OFF
  2.         goto ARGS
  3. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  4. REM                                                                        REM
  5. REM     Syntax (RFC 2234):                                                 REM
  6. REM                                                                        REM
  7. REM         "_gbak-db.bat"  path-to-db   user  pswd                        REM
  8. REM                                                                        REM
  9. REM         %1 path to .FDB file                                           REM
  10. REM         %2 user                                                        REM
  11. REM         %3 password                                                    REM
  12. REM                                                                        REM
  13. REM     It assumes that filename = alias                                   REM
  14. REM                                                                        REM
  15. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  16. :ARGS
  17.         echo ###################################################################
  18.         echo # Backing-up and Firebird's database %1
  19.         echo #------------------------------------------------------------------
  20.  
  21.         if "%1"=="" goto ERR_PAR1
  22.         if "%2"=="" goto ERR_PAR2
  23.         if "%3"=="" goto ERR_PAR3
  24.  
  25.         set BAT=D:\BAT\
  26.         if not "%BAT%"=="D:\BAT\" goto ERR_ENV
  27.  
  28.         set BAK=D:\BAK\
  29.         if not "%BAK%"=="D:\BAK\" goto ERR_ENV
  30.  
  31.         set CoreName=%~n1
  32.  
  33. REM
  34.         call %BAT%_PathToProgramFile.bat  Firebird\Firebird_2_5\bin\gbak.exe
  35.         if not exist "%_FILE_%" goto ERREXE
  36. REM
  37.         echo # Dropping an old backup file...
  38.         call %BAT%_DateTimeToISO8601.bat
  39.  
  40.         set FBK=%BAK%%CoreName%-%f%.fbk
  41.         if exist "%FBK%" del %FBK% > nul
  42.         if exist "%FBK%" goto ERRDELFBK
  43. REM
  44.         echo # Backing-up to %FBK%
  45.         "%_FILE_%" -b   %CoreName%  %FBK% -user %2 -password %3
  46.         if ERRORLEVEL 1 goto ERRFBK
  47.         if not exist "%FBK%" goto ERRFBK
  48.         attrib +r %FBK%
  49.         echo # Done.
  50.  
  51.         goto :EOF
  52.  
  53. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  54. REM     ERRORS                                                             REM
  55. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  56. :ERR_PAR1
  57.         echo !! Missing 1st command line argument: Path to DB file
  58.         pause
  59.         goto :EOF
  60. :ERR_PAR2
  61.         echo !! Missing 2nd command line argument: user name to connect to DB
  62.         pause
  63.         goto :EOF
  64. :ERR_PAR3
  65.         echo !! Missing 3rd command line argument: password to connecto to DB
  66.         pause
  67.         goto :EOF
  68. :ERRDELFBK
  69.         ECHO Unable to delete an old backup file "%FBK%"
  70.         pause
  71.         goto :EOF
  72. :ERRFBK
  73.         ECHO Unable to backup the original Firebird's database file "%1" to "%FBK%"
  74.         pause
  75.         goto :EOF
  76.  
a zpatky
Kód: Text [Vybrat]
  1. @       echo OFF
  2.         goto ARGS
  3. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  4. REM                                                                        REM
  5. REM     Syntax (RFC 2234):                                                 REM
  6. REM                                                                        REM
  7. REM         "_gbak-restore.bat"  path-to-db   user  pswd                   REM
  8. REM                                                                        REM
  9. REM         %1 path to .FDB file                                           REM
  10. REM         %2 user                                                        REM
  11. REM         %3 password                                                    REM
  12. REM                                                                        REM
  13. REM     It assumes that filename = alias                                   REM
  14. REM                                                                        REM
  15. REM                                                                        REM
  16. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  17. :ARGS
  18.         if "%1"=="" goto ERR_PAR1
  19.         if "%2"=="" goto ERR_PAR2
  20.         if "%3"=="" goto ERR_PAR3
  21.  
  22.         set BAT=D:\BAT\
  23.         if not "%BAT%"=="D:\BAT\" goto ERR_ENV
  24.  
  25.         set BAK=D:\BAK\
  26.         if not "%BAK%"=="D:\BAK\" goto ERR_ENV
  27.  
  28.         set CoreName=%~n1
  29.  
  30.         set FBK=%~dpn1.fbk
  31.         if not exist %FBK% goto ERRFBK
  32.  
  33.         echo ###################################################################
  34.         echo # Restoring Firebird's database having alias "%CoreName%" in-place
  35.         echo #------------------------------------------------------------------
  36.  
  37. REM
  38.         call %BAT%_PathToProgramFile.bat  Firebird\Firebird_2_5\bin\gbak.exe
  39.         if not exist "%_FILE_%" goto ERREXE
  40. REM
  41.         set DUP=%~dpn1.~fdb
  42.         if not exist %1 goto CREATEFDB
  43.         echo # Making duplicate of the original database
  44.         if exist %DUP% del %DUP% > nul
  45.         copy %1 %DUP% > nul
  46.         if not exist %DUP% goto ERRDUPFDB
  47. REM
  48.         echo # Dropping an old database file...
  49.         if exist %1 del %1 > nul
  50.         if exist %1 goto ERRDELFDB
  51. REM
  52. :CREATEFDB
  53.         echo # Restoring database from the backup
  54.         "%_FILE_%" -c %FBK% %CoreName%    -user %2 -password %3
  55.         if ERRORLEVEL 1 goto ERRRESFDB
  56.         if not exist %1 goto ERRRESFDB
  57.  
  58.         if exist %DUP% del %DUP% > nul
  59.  
  60.         echo # Done.
  61.  
  62.         goto :EOF
  63.  
  64. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  65. REM     ERRORS                                                             REM
  66. REMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREMREM
  67. :ERR_PAR1
  68.         echo !! Missing 1st command line argument: Path to DB file
  69.         pause
  70.         set _FILE_=""
  71.         goto :EOF
  72. :ERR_PAR2
  73.         echo !! Missing 2nd command line argument: user name to connect to DB
  74.         pause
  75.         goto :EOF
  76. :ERR_PAR3
  77.         echo !! Missing 3rd command line argument: password to connecto to DB
  78.         pause
  79.         goto :EOF
  80. :ERRFBK
  81.         ECHO Missing Firebird's backup file "%FBK%" to create database from.
  82.         pause
  83.         goto :EOF
  84. :ERRDUPFDB
  85.         ECHO Unable to duplicate the original Firebird's database file "%FDB%".
  86.         pause
  87.         goto :EOF
  88. :ERRDELFDB
  89.         ECHO Unable to delete original Firebird's database file "%FDB%". Maybe someone is still connected to this database.
  90.         pause
  91.         goto :EOF
  92. :ERRRESFDB
  93.         ECHO Unable to recreated Firebird's database file "%FDB%" - restoration has failed.
  94.         pause
  95.         goto :EOF
  96. :ERREXE
  97.         ECHO Missing gbak.exe executable file. It is expected on "%_FILE_%" path
  98.         pause
  99.         goto :EOF
  100.  

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #3 kdy: 02-12-2018, 15:23:15 »
Citace
]Dobre, ale jak s tim vsim mame nalozit? Z popisu jsem pochopil, ze selhal externi nastroj (jak?) pri backupu databaze serverem Firebird 2.5, jenz jsi dodatecne nainstaloval. Takze ta databaze nebyla vytvorena verzi 2.5?
Server nebol nainštalovaný korektne. Bila sa mi 2.5 s 3. Knižnice vo Windows. Takže DB manažér sa nedokázal pripojiť k DB. Nič viac za tým nehľadajte.
Je to verzia Firebird-2.5.1.26351_1_Win32.exe.
Ide o jednorázovú akciu. Ostané DB som si prekonvertoval ale táto mi ušla. Teraz treba upraviť aplikáciu a kvôli tomu to nemôžem urobiť. DB nemá ani 2 MB.
Ak sa tu nikto nenájde, tak budem hľadať nejaký PC, na ktorom to budem môcť urobiť.
To pf1957 - kým to naštudujem a pochopím, tak to 10 x urobím na nejakom PC - len ho nájsť  :)  Predtým som to robil pomocou EMS manager-u a nebol žiaden problém.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline vandrovnik

  • Guru
  • *****
  • Příspěvků: 533
  • Karma: 36
    • Verze Delphi: 10.2
Re:Záloha FB 2.5
« Odpověď #4 kdy: 03-12-2018, 20:00:24 »
Mám nainstalovanou verzi 2.5 i 3.0, tak pokud bys chtěl, zálohu ve 2.5 Ti můžu udělat.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #5 kdy: 03-12-2018, 22:10:04 »
Ďakujem, už to mám.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #6 kdy: 04-12-2018, 12:14:04 »
Tvrdo som narazil. Manažér DB otvorí a tvrdí, že to je verzia 3.0 Viď obrázok.
Program ju tvrdo odmieta s tým, že to je neplatná DB.
Neviem čo mám vlastne urobiť. Mám tam len 14 tabuliek, takže prichádza do úvahy aj komplet nové vytvorenie. Nerád by som prišiel o údaje
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #7 kdy: 04-12-2018, 12:20:16 »
Vytvoril som DB nanovo. Prázdnu - nič v nej nie definované. A už ričí, že DB je neplatná :'( :'( :'( ???
Neviem kde mám zradu, ale skopíroval som určite platnú DB, premenoval som ju a výsledok je rovnaký = neplatná DB. Pritom pri debug móde využívam priamo adresár FB.
« Poslední změna: 04-12-2018, 12:25:02 od Stanislav Hruška »
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1364
  • Karma: 57
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:Záloha FB 2.5
« Odpověď #8 kdy: 04-12-2018, 12:20:42 »
Tvrdo som narazil. Manažér DB otvorí a tvrdí, že to je verzia 3.0 Viď obrázok.
Program ju tvrdo odmieta s tým, že to je neplatná DB.
Neviem čo mám vlastne urobiť. Mám tam len 14 tabuliek, takže prichádza do úvahy aj komplet nové vytvorenie. Nerád by som prišiel o údaje

Porad nemam zdani, na co se tu ptas. Pokud tim programem myslis svou vlastni aplikaci, pak ta aplikace pravdepodobne pouziva starsi embedded server (nebo se ke starsimu serveru pripojuje). Pouzij verzi serveru jenz pouziva ten DB manazer (kteremu pripojeni funguje).
« Poslední změna: 04-12-2018, 12:22:44 od Delfin »
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #9 kdy: 04-12-2018, 12:27:05 »
Trochu som doplnil info + mám len jedinú verziu serveru. A pri FB3 vlastne embeded server neexistuje. Používa na to fbclient.dll. Ale viď hore - skopírovanie dobrej DB.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1364
  • Karma: 57
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:Záloha FB 2.5
« Odpověď #10 kdy: 04-12-2018, 12:33:54 »
Trochu som doplnil info + mám len jedinú verziu serveru. A pri FB3 vlastne embeded server neexistuje. Používa na to fbclient.dll. Ale viď hore - skopírovanie dobrej DB.

Dobre, a ten embedded server jenz ta aplikace (FireDAC, bych tipoval) pouziva je urcite verze 3?
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #11 kdy: 04-12-2018, 12:36:10 »

Je. Iný nemám. A je to FireDAC.

Doplňujem, že pri otváraní projektu mi hlási túto chybu
Citace
Access violation at address 20200003 in module 'htmide210.bpl'. Write of address BB3BAFB8.

[20200003]{htmide210.bpl} HTMLBaseFrame.THTMLBaseFrameWindow.CommandUpdateAfterExecuteCommand (Line 2151, "HTMLBaseFrame.pas" + 57) + $177
[5005F87D]{rtl210.bpl  } System.@AfterConstruction (Line 16999, "System.pas" + 2) + $5

Ja tomu nerozumiem
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Delfin

  • Guru
  • *****
  • Příspěvků: 1364
  • Karma: 57
  • SW konzultant
    • Verze Delphi: 2009, Tokyo
Re:Záloha FB 2.5
« Odpověď #12 kdy: 04-12-2018, 12:41:24 »

Je. Iný nemám. A je to FireDAC.

Doplňujem, že pri otváraní projektu mi hlási túto chybu
Citace
Access violation at address 20200003 in module 'htmide210.bpl'. Write of address BB3BAFB8.

[20200003]{htmide210.bpl} HTMLBaseFrame.THTMLBaseFrameWindow.CommandUpdateAfterExecuteCommand (Line 2151, "HTMLBaseFrame.pas" + 57) + $177
[5005F87D]{rtl210.bpl  } System.@AfterConstruction (Line 16999, "System.pas" + 2) + $5

Ja tomu nerozumiem

Jsme od sebe pres 1500km. Tak daleko nevidim ;D Takze v cem je teda problem? Pri otevirani projektu (vidim tam module htmide210.bpl) Ti vypadne tato AV? Pokud ano, nejspis jsi nechal v navrhu nejaky aktivni dataset objekt a podrazil sis vetev zmenou databaze. Nebo se Ti nedari k te databazi pripojit a ten posledni prispevek je jiny problem?
« Poslední změna: 04-12-2018, 12:43:08 od Delfin »
I'm a soldier, so don't panic! I know the underground! I like WTFPL license! No more Google, go duck, go!

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #13 kdy: 04-12-2018, 12:51:12 »



Doplnil som FireDAC.Phys.FB.TFDPhysFBDriverLink a už dostávam


Access violation at address 174DF872 in module 'bindcomp210.bpl'. Read of address 1F01C764.


[174DF872]{bindcomp210.bpl} Data.Bind.Components.GetBindEditor (Line 3401, "Data.Bind.Components.pas" + 3) + $4
[5005F87D]{rtl210.bpl  } System.@AfterConstruction (Line 16999, "System.pas" + 2) + $5


Pripojenie k DB je skopírované z funkčného projektu.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 3647
  • Karma: 35
    • Verze Delphi: XE7 professional
Re:Záloha FB 2.5
« Odpověď #14 kdy: 04-12-2018, 12:54:03 »
Všetko čo je spojené s DB vytváram dynamicky! Idem skontrolovať transakcie a connection.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Jméno: E-mail:
Ověření:
Kolik je šest plus čtyři (slovem):