Migracja Firebird 2.5 do wersji Firebird 3
Przejdź do nawigacji
Przejdź do wyszukiwania
Wersja trzecia Firebirda wprowadza nową strukturę baz danych i tylko tę obsługuje. Oznacza to, że bazy utworzone poprzednimi wersjami stały się dla wersji trzeciej nieczytelne. W związku z tym, aby przenieść bazę danych z poprzednich wersji należy najpierw utworzyć jej kopię zapasową, a następnie odtworzyć ją z tej kopii używając programów narzędziowych z wersji 3.
FBBack to narzędzie ułatwiające proces migracji baz danych z Firebird 2.5 do wersji Firebird 3.
groszek.pl > zakładka Pobieranie > katalog zz_dodatki > info-sys_fb25to30.zip groszek.pl > info-sys_fb25to30.zip
Proces migracji
Do przeprowadzenia migracji wymagany jest serwer Firebird w wersji 2.5.9
- Uruchamiamy aplikacje 'FBBack.exe'
- Backup (kopia zapasowa) - na komputerze z Firebird 2.5:
- Zaznaczamy 'Backup' oraz 'Skrypty naprawcze'
- Przyciskiem 'Wybierz pliki' wskazujemy pliki baz danych (bazy zalecamy przenieść do katalogu z aplikacją 'fbback'; można zaznaczyć wiele baz)
- W polach 'Login' oraz 'Hasło' wprowadzamy dane logowania użytkownika baz danych
- Przyciskiem 'Start' rozpoczynamy procedurę tworzenia kopii zapasowej - kopia zostanie utworzona w tej samej lokalizacji
- Restore (odtworzenie z kopii zapasowej) - po odinstalowaniu Firebird 2.5 i zainstalowaniu Firebird 3 (zalecamy instalacje wersji 3.0.10)
- W aplikacji 'FBBack.exe' zaznaczamy 'Restore'
- Przyciskiem 'Wybierz pliki' wskazujemy pliki z kopią baz danych
- W polach 'Login' oraz 'Hasło' wprowadzamy dane logowania użytkownika baz danych
- Przyciskiem 'Start' rozpoczynamy procedurę odtworzenia - docelowe pliki bazy danych zostaną utworzone w tej samej lokalizacji
Skrypty (opcja alternatywna dla zaawansowanych)
Na serwerze z Firebird 2.5
Skrypt naprawczy:
alter table is_konta_w add UWAGI_BUFOR varchar(30000);
update is_konta_w set uwagi_bufor = uwagi_ksg;
alter table is_konta_w drop uwagi_ksg;
Kopia bazy danych:
gbak -user usr -pas psw -b -v -g -se service_mgr database backupfile
Na serwerze z Firebird 3.0
Instalujemy i uruchamiamy Firebirda 3 (zalecamy wersję 3.0.10; wcześniej odinstalowujemy bieżącą wersję). Wykonujemy polecenie odtworzenia bazy danych z kopii zapasowej:
gbak -user usr -pas psw -c -v -se service_mgr backupfile database1
Po odtworzeniu bazy z kopii należy wykonać poniższy skrypt:
alter table is_konta_w add UWAGI_KSG BLOB SUB_TYPE 1 SEGMENT SIZE 4096;
update is_konta_w set uwagi_ksg = uwagi_bufor;
alter table is_konta_w drop uwagi_bufor;