Główna / Pomoc / Podniesienie wersji programu Firebird

Podniesienie wersji programu Firebird

Migracja Firebirda do wyższej wersji

Nowsze wersje programu Firebird oferują znacznie większe możliwości. Zostało dodanych wiele nowych, bardzo przydatnych funkcji oraz usunięto wiele usterek.

Stabilną i nadającą się do pracy jest wersja 3.0.7 lub nowsza (wspieramy również wersje 4 i 5).

Uwaga! Jeśli użytkownik korzysta z innych aplikacji korzystających z bazy Firebird, należy to uwzględnić przy wykonywaniu migracji.

Jak dokonać przejścia na wyższą wersję Firebird?

Przed wykonaniem jakichkolwiek operacji należy się upewnić, że została wykonana kopia zapasowa oryginalnej bazy danych!

Podczas kopiowania pliku z bazą danych, program powinien być zamknięty na wszystkich stanowiskach! Dotyczy to także innych programów korzystających z bazy danych WinSADIB, takich jak WinSkładIB, WinUCZIB, MagCS czy AkcyzaIB.

Jeśli na serwerze (na komputerze, na którym znajduje się baza danych) zainstalowany jest 64-bitowy system operacyjny, należy zainstalować Firebird dla 64 bit.

Na stacjach roboczych wystarczy zainstalować tylko aplikacje klienckie Firebirda (bez serwera bazodanowego).

Przejście na wyższą wersję programu Firebird w przypadku, gdy na serwerze jest zainstalowane nasze oprogramowanie

Kolejność działań, które należy wykonać na serwerze (czyli komputerze, na którym znajduje się baza danych):

  • dla bezpieczeństwa skopiować plik z bazą danych programu (wszystkie stanowiska WinSADa muszą być zamknięte!). Lokalizację pliku z bazą SADów można sprawdzić w okienku logowania do WinSADa, po wejściu w “Baza danych”. Lokalizację pliku z bazą Faktur VAT można sprawdzić wchodząc w Opcje Opcje programu Baza danych Baza danych faktur VAT – użytkownika. Lokalizację baz danych dodatkowych modułów (o ile takie istnieją) można sprawdzić po wejściu w Opcje Konfiguracja modułów Konfiguruj;
  • wykonać kopię zapasową bazy SADów jeszcze na “starszej” wersji programu Firebird (na przykład z poziomu WinSADIB: Narzędzia Konserwacja bazy Twórz kopię zapasową). Wykonać także kopie zapasowe pozostałych baz, z których Państwo korzystacie, np. bazy faktur VAT bądź gwarancji. Bazę faktur VAT można zarchiwizować wchodząc w Dokumenty Faktury VAT Narzędzia  Konserwacja bazy Twórz kopię zapasową. Pozostałe bazy danych (bazy dodatkowych modułów) należy archiwizować ręcznie (poniżej informacje “Dla zaawansowanych użytkowników”);
  • odinstalować “starszą” wersję programu Firebird i zainstalować wyższą wersję tego programu (patrz instrukcje).
    Wersja Firebirda na serwerze i stacjach roboczych musi być identyczna, przy czym na serwerze instalujemy wersję 64-bit, a na stacjach roboczych tylko komponenty klienta Firebird w wersji 32-bit.
  • utworzyć nową bazę danych.
    Program WinSADIB sam założy nową bazę danych.
    Wystarczy (na komputerze pełniącym rolę serwera) zmienić nazwę pliku z bazą danych, np. z “SadDaneIB.fdb” na “SadDaneIB_stary.fdb”.
    Następnie uruchomić WinSADIB. Program stwierdzi, że plik z bazą danych nie istnieje i zapyta, czy utworzyć nową bazę danych – należy się zgodzić.
    Po założeniu nowej bazy danych login do programu to: Administrator, hasło puste (bez hasła).
  • przywrócić bazę z wykonanej wcześniej kopii zapasowej.
    Dla bazy SADów: w programie WinSADIB można skorzystać z opcji:
    Narzędzia  Konserwacja bazy   Przywróć bazę z kopii “wybrać archiwum z listy archiwizacji” wskazać najnowszy plik z archiwum (o rozszerzeniu .gbk), znajdujący się na dysku.
  • wykonać podobną operację dla bazy Faktur VAT:
    Utworzyć bazę faktur (zmienić nazwę pliku ze starą bazą, następne wejść w Dokumenty  Faktury VAT – program utworzy nową bazę);
    następnie będąc już w Module Faktur VAT: wejść w Narzędzia konserwacja bazy  Przywróć bazę z kopii i wskazać najnowszy plik z archiwum.
  • Zaawansowani użytkownicy w celu utworzenia kopii zapasowej i przywrócenia bazy z kopii mogą posłużyć się linią komend (informacje poniżej) – ten sam efekt można uzyskać wykonując mniej czynności;
  • Nie trzeba archiwizować bazy Taryfy celnej – wygodniej będzie zainstalować tę bazę od nowa, wchodząc w WinSADzie w Tablice Taryfa celna Aktualizacja taryfy celnej Pobierz całą taryfę.
  • operacja ukończona.

Uwagi:

Należy pamiętać, że program WinSADIB korzysta z kilku baz danych (baza SADów, baza Faktur, ewentualnie baza Gwarancji i bazy modułów dodatkowych). Przed instalacją nowego Firebirda należy wykonać kopie zapasowe wszystkich baz.

Przywracanie bazy z kopii można wykonać poprzez WinSADIB, ale nie należy łączyć upgrade’u Firebirda z upgradem WinSADa, to znaczy: kopia zapasowa bazy na “starszej” wersji programu Firebird musi być wykonana tą samą wersją WinSADa, która będzie przywracać bazę z kopii na wyższej wersji programu Firebird.

Bazy danych utworzonej na wyższej wersji Firebirda (poprzez backup i restore) nie będzie można uruchomić na “starszej” wersji programu Firebird.

Prosimy zwrócić uwagę, że jeżeli serwer Firebird jest używany również do innych aplikacji niż naszej produkcji, trzeba je uwzględnić w procesie migracji.

Dla zaawansowanych – migracja bazy z wykorzystaniem linii komend:

Istnieje możliwość ręcznego wykonania kopii zapasowej i przywracania bazy z kopii.

Kopię bazy robimy za pomocą narzedzia gbak pochodzącego ze starego firebirda (tego, którego używaliśmy). Odtworzenie bazy robimy za pomocą nowego gbaka (z Firebirda, na którego migrujemy).

Służą do tego polecenia (ogólny schemat działania):

wykonanie kopii zapasowej:
gbak -g -l -t -user sysdba -pas masterkey ip_serwera:sciezka_pliku_bazy.fdb sciezka_pliku_archiwum.gbk

przywrócenie bazy z kopii:
gbak -c -p 4096 -k -rep -user sysdba -pas masterkey sciezka_pliku_archiwum.gbk ip_serwera:sciezka_pliku_bazy.fdb

Plik gbak znajduje się w podfolderze bin folderu, w którym jest zainstalowany Firebird, należy do niego przejść w linii komend.

Przy czym plik z rozszerzeniem .gbk jest plikiem archiwum, natomiast plik z rozszerzeniem .fdb (lub .gdb dla starszych baz) jest plikiem bazy danych.

Jeśli jest potrzeba sprawdzenia, czy dana baza została przekonwertowana do wersji 2.1, można wykonać zapytanie:

SELECT RDB$GET_CONTEXT(‘SYSTEM’, ‘ENGINE_VERSION’) FROM RDB$DATABASE

Wykonanie powyższego zapytania nie powiedzie się na bazie w “starszej” wersji (zwróci błąd), natomiast na bazie o poprawnej strukturze w nowszej wersji powiedzie się (zwróci numer wersji Firebird).

Następnie warto do plików baz danych utworzyć aliasy i wskazać je jako bazy dla programów. Szczegóły tych czynności są opisane na stronie https://firebirdsql.org/rlsnotesh/config-db-alias.html. Darmowym programem narzędziowym jest ułatwiającym niektóre z tych czynności jest program o nazwie FlameRobin.

Przejście z Firebird (32-bit) na Firebird (64-bit) (taka sama wersja programu Firebird)

Wystarczy uruchomić bazę danych na nowej wersji serwera Firebird, konwersja jest automatyczna.

 

Dział pomocy