Archiwizator – automatyczne kopie baz danych

Archiwizator to serwis aplikacyjny pozwalający na automatyczne (bez udziału użytkownika) tworzenie codziennie (o zadanej godzinie) kopii zapasowych baz danych systemu RAKS. Przy odpowiednim ustawieniu trybu pracy można również zweryfikować fizyczną strukturę baz danych przed wykonywanym zapisem. Narzędzie automatycznie usuwa również pliki kopii baz danych, które spełnią zadane przez Użytkownika kryterium daty.

Archiwizator jest konfigurowalny z poziomu modułu RAKSSQL Administrator (zakładka Automatyczna kopia zapasowa – Ustawienia). Z tego samego miejsca Użytkownik ma dostęp do Dziennika operacji, który prezentuje wszystkie operacje wykonane przez Archiwizator.

Tworzenie kopii odbywa się z użyciem standardowej aplikacji gbak.exe dedykowanej dla serwera bazy danych Firebird 4.0. Do sprawdzania fizycznej struktury baz danych wykorzystywana jest aplikacja gfix.exe.

Najważniejsze korzyści:

  • Automatyczne codzienne wykonywanie kopii baz zapasowych w tle bez udziału Użytkownika (pewność posiadania „najświeższych” kopii baz danych),
  • Automatyczna weryfikacja fizycznej struktury baz danych (pewność, że bazy danych nie są fizycznie uszkodzone),
  • Automatyczne codzienne czyszczenie „zbędnych” kopii baz danych wg wskazanej przez Użytkownika godzinie,
  • Możliwość dopasowania godziny pracy archiwizatora (wykonywania backupu) do własnych preferencji,
  • Działanie „w tle” jako usługa Windows, bez konieczności „startowania” narzędzia przy każdorazowym logowaniu do systemu,
  • Codzienne automatyczne generowanie wiadomości e-mail (na wskazany adres/adresy) z raportem działań Archiwizatora,
  • Prosty i przejrzysty dostęp do Archiwizatora z poziomu programu RAKSSQL Administrator,
  • Dostęp do Dziennika operacji Archiwizatora z poziomu programu RAKS.

Narzędzie Archiwizator jest dodatkową płatną funkcją programu RAKS. Żeby móc korzystać z automatycznych kopii zapasowych należy posiadać w licencji pozycję Automatyczna kopia zapasowa.

Instalacja Archiwizatora

Instalacja Archiwizatora jako usługa systemowa (instalacja domyślna).

Krok 1 Zainstaluj biblioteki Microsoft NET 8.0.

Archiwizator działa w środowisku Microsoft NET 8.0.

Wymaga on zatem instalacji następujących pakietów bibliotek:

  • aspnetcore-runtime-8.0.11-win-x86.exe
  • dotnet-runtime-8.0.11-win-x86.exe

Pakiety Microsoft NET dostarczane są wraz z instalatorem Archiwizatora.

Krok 2 Zainstaluj serwis Archiwizatora (Raks.SQL.Integrator.Installer.exe).

Instalacja odbywa się poprzez standardowe uruchomienie otrzymanego instalatora Raks.SQL.Integrator.Installer.exe

Po udanej instalacji pakietów Microsoft i RAKSSQL – Integrator, powinniśmy mieć w sekcji “Aplikacje i funkcje” widoczne programy:

We wskazanym katalogu przy instalacji (domyślnie: C:\Raks\RAKSSQL – Integrator):

W Usługach Windows:

Na tym kończy się proces domyślnej instalacji Archiwizatora, działającego jako usługa Windows logowana jako System lokalny i uruchamiana automatycznie po starcie systemu Windows.

W kolejnym kroku należy zalogować się do systemu RAKSSQL – Administrator i skonfigurować automatyczne archiwizacje (Instrukcja – Konfiguracja Archiwizatora).

Instalacja Archiwizatora jako usługa logowana na Użytkownika.

Po wykonaniu wszystkich kroków z „Instalacji Archiwizatora” (Krok 1 i Krok 2) należy:

Krok 3 Zmodyfikować plik serwis-użytkownik.bat dostępny w katalogu RAKSSQL-Integrator.

Plik serwis-uzytkownik.bat należy wyedytować i wpisać odpowiednie dane w parametry:

  • obj – użytkownik domenowy „DOMENA\nazwa_użytkownika”
  • password – hasło użytkownika

Przykład:

Zapisać zmiany w pliku.

Krok 4 Zweryfikować, czy użytkownik wpisany w skrypcie jest z dodany jako „Logowany w trybie usługi” w Zasadach zabezpieczeń lokalnych.

Krok 5 Uruchomić plik serwis-uzytkownik.bat z uprawnieniami Administratora.

Po wykonaniu skryptu, usługa będzie działała jako logowana na wskazanego użytkownika domenowego.

Praca Archiwizatora jako program konsolowy

Archiwizator może być uruchamiany jako program konsolowy, nie jako usługa Windows.

Praca w takim trybie wymusza na użytkowniku uruchamianie konsoli z pliku exe Raks.SQL.Integrator.Service.exe przy każdym starcie i logowaniu się do systemu Windows. Konsola Archiwizatora musi być uruchamiana, aby mogła spełniać swoje założenia czyli automatyczne wykonywanie archiwizacji baz danych o wskazanej godzinie.

Zaletą pracy konsolowej jest prezentowanie działań Archiwizatora na konsoli w czasie rzeczywistym. Kopie zapasowe w trybie konsolowym można odkładać zarówno na dyskach sieciowych jak i dyskach komputera, na których zainstalowany jest Archiwizator.

Żeby móc pracować na Archiwizatorze w trybie konsolowym należy (po zainstalowaniu Archiwizatora z otrzymanego instalatora):

Krok 1 Uruchomić skrypt serwis-odinstaluj.bat z uprawnieniami Administratora (C:\Raks\RAKSSQL-Integrator). Skrypt odinstaluje usługę RaksSQLIntegrator, która została zainstalowana domyślnie instalatorem Analizatora.

Krok 2 Uruchomić Raks.SQL.Integrator.Service.exe (domyślna lokalizacja C:\Raks\RAKSSQL – Integrator). Pojawi się aplikacja konsolowa, która musi być uruchomiona, żeby działał serwis Integratora.

Dodatkowe skrypty

Katalog RAKSSQL-Integrator posiada, oprócz wskazanego powyżej skryptu (serwis-uzytkownik.bat), jeszcze dwa dodatkowe skrypty:

  • serwis-odinstaluj.bat – zatrzymuje i odinstalowuje usługę RaksSQLIntegrator
  • serwis-system.bat – usuwa (jeżeli jest) usługę RaksSQLIntegrator i instaluje ponownie usługę RaksSQLIntegrator, uruchamiając ją jako “System lokalny” (tak jak po instalacji).

Konfiguracja Archiwizatora

W tej sekcji opisane zostały zasady konfiguracji Archiwizatora w RaksSQL oraz plik, w którym ustawienia te są przechowywane po stronie serwisu aplikacyjnego.

Konfiguracja RAKSSQL

Konfiguracja i zarządzanie Archiwizatorem z poziomu Raks SQL Administrator odbywa się w gałęzi Automatyczna kopia zapasowa w sekcji Obsługa baz danych:

Krok 1 Zaloguj się do modułu Administrator i przejdź do zakładki Automatyczna kopia zapasowa

Krok 2 Kliknij Ustawienia i wypełnij odpowiednie pola i Zapisz ustawienia.

Adres serwisu – adres maszyny (wraz z numerem portu), na której działa serwis Archiwizatora. Jeśli został on zainstalowany lokalnie, będzie to localhost:5000. Port 5000 jest domyślnym portem dla Archiwizatora.

Testuj połączenie – użycie tego przycisku uruchomi test połączenia z serwisem oraz bazą danych i wyświetli komunikat o wyniku tych operacji.

Podstawowe

Tryb pracy – umożliwia określenie sposobu działania serwisu aplikacyjnego. Możliwe są trzy tryby pracy:

  • Sprawdzenie struktury i wykonanie kopii zapasowej – w tym trybie Archiwizator wykonuje dwie operacje – sprawdza i raportuje fizyczną strukturę baz danych a następnie wykonuje kopie zapasowe tych baz
  • Wykonanie kopii zapasowej – w tym trybie Archiwizator wykonuje kopie zapasowe (pomija etap sprawdzania struktury baz danych) i raportuje poprawność ich wykonania
  • Sprawdzenie struktury – ustawienie tego trybu, wyzwala jedną operację – sprawdzenie fizycznej struktury baz i zaraportowanie wyniku.

Harmonogram

Początek/koniec pracy – godziny rozpoczęcia i zakończenia procesów ustawionych w Trybie pracy. Proces ten będzie się uruchamiał każdego dnia.

Usuwanie kopii – godzina rozpoczęcia procesu usuwania przeterminowanych kopii zapasowych (wg. Zadanego parametru Liczba dni w archiwum)

Kopie zapasowe i log

Lokalizacja – lokalizacja, gdzie mają zapisywać się kopie zapasowe i log z wykonywanych operacji. Ścieżka musi być podana względem maszyny, na której działa serwis. Jeżeli chcemy kopie zapisywać na zasobie sieciowym należy wpisywać pełną lokalizację \\nazwa_serwera\nazwa_udziału\nazwa_katalogu

Liczba dni w archiwum – określa liczbę dni, przez które będą przechowywane kopie zapasowe. Po ich upływie pliki będą usuwane z dysku.

Powiadomienia

Adresy e-mail – adresy e-mail, na które będzie przychodziła automatycznie generowana wiadomość z serwisu RAKSSQL Archiwizator, z informacjami dotyczącymi procesu wykonywania kopii zapasowych.Można zdefiniować tu kilka adresów oddzielając je przecinkami (admin@firma.pl, prezes@firma.pl itp.).

Powiadamiaj wyłącznie wtedy, gdy wystąpiły problemy z archiwizacją – checkbox, który określa czy e-mail z wynikiem operacji archiwizacji ma zostać wysłany zawsze (odznaczone), czy tylko wtedy, gdy wystąpiły błędy w tym procesie (zaznaczone).

Przykład prawidłowych ustawień okna Ustawienia automatycznych kopii:

Przykład prawidłowo wygenerowanego e-maila:

Krok 3 Uruchom działanie serwisu Archiwizator poprzez kliknięcie Uruchom kopie automatyczne.

Wszystkie operacje wykonywane przez serwis Archiwizator będą pokazywane w oknie Dziennik operacji w zakładce Automatyczna kopia zapasowa w module Administrator.

Domyślnie w widoku okna wyszczególnione są następujące kolumny:

Status – Sukces/Błąd/Ostrzeżenie. Statusy informują, czy wskazana operacja została wykonana (Sukces) czy nie (Błąd). Błędy odnotowywane są kolorem czerownym. Dla operacji Sprawdzanie struktury pojawia się dodatkowy status Ostrzeżenie (kolor pomarańczowy), występuje gdy do sprawdzaniej bazy podłączony jest jakikolwiek klient.

Operacja – informuje, jakiego typu operacja została wykonana – Sprawdzenie, Tworzenie czy Usuwanie.

Data wykonania operacji – data i godzina zakończenia operacji

Kopia – miejsce odłożenia kopii zapasowej (FBK) i logu

Rozmiar [KB] – rozmiar pliku z backup’em

Z zasobnika kolumn można dodatkowo wyciągnąć kolumny:

Baza danych – położenie pliku bazy FDB

Rodzaj bazy danych – Globalna, Firmowa, Załączniki

Data rozpoczęcia operacji – data i godzina rozpoczęcia wykonywania kopii zapasowej

Data zakończenia operacji – data i godzina zakończenia wykonywania kopii zapasowej

Informacje dodatkowe – dodatkowy zapis informujący o przyczynie niewykonania kopii zapasowej

Kategoria danych – informuje, jakich baz dotyczy zapis (Dane globalne, Firma nr …)

Korzystając z opcji Filtruj dziennik operacji, możemy dowolnie wyfiltrować ilość wyświetlanych danych w oknie Dziennik operacji, ustawiając operacje z ostatnich n dni lub zaznaczając widok sprawdzenia/tworzenia/usuwania kopii zapasowych. Domyślnie, dziennik operacji, prezentuje tylko logi dotyczące operacji Tworzenie.

Ograniczenia i ostrzeżenia

Jeżeli do bazy danych, która podlegać będzie sprawdzeniu struktury, podłączony będzie jakikolwiek klient (Raks SQL, IB Expert, DBeaver itp.), to sprawdzenie struktury (gfix) zwracać będzie ostrzeżenie w Dzienniku operacji, natomiast w treści maila taka baza będzie raportowana w sekcji „Niepoprawne struktury baz danych”.

Jeżeli wejdziemy do Raks SQL Administrator i w tym czasie uruchomi się sprawdzanie struktury, ostrzeżenie takie dotyczyć będzie bazy globalnej, do której podłączony jest właśnie ten moduł.

Jeżeli użytkownik, w trakcie wykonywania sprawdzenie struktury bazy danych, będzie pracował na tej bazie to również pojawi się ostrzeżenie.

Takie ostrzeżenie zostanie zaraportowane, gdy w Monitorze systemu (moduł Administrator) będą zalogowani użytkownicy lub połączenia z bazami danych.

Treść takiego błędu wygląda następująco:

„bad parameters on attach or create database\r\n-secondary server attachments cannot validate databases

Konfiguracja – Plik konfiguracyjny

Plik konfiguracyjny wygląda następująco i jest odzwierciedleniem tego co zostało zapisane w Automatyczna kopia zapasowa/Ustawienia:

ParametrOpisDomyślnie
workModeTryb pracy: 0 – sprawdzanie i tworzenie archiwum, 1 – tworzenie archiwum, 2- sprawdzanie fizycznej struktury baz danych0
folderLokalizacja kopii zapasowych.
emailAddressesAdresy e-mail (oddzielone przecinkiem), na które wysyłane będą informacje przebiegu procesu archiwizacji baz danych.
reportProblemsOnlyOkreśla, czy system ma raportować (e-mail) tylko i wyłącznie problemy z archiwizacją baz danych, czy wszystkie operacje.false
beginAtGodzina rozpoczęcia procesu tworzenia kopii zapasowych.23:00
finishAtGodzina zakończenia procesu tworzenia kopii zapasowych.
Jeżeli system nie zdąży do tego momentu wykonać zaplanowanych kopii zapasowych, kolejnego dnia proces zostanie wznowiony od pierwszej bazy, której kopia nie została utworzona dnia poprzedniego.
05:00
removeBackupAfterDaysLiczba dni, po upływie których kopia zapasowa straci ważność i zostanie usunięta z dysku.30
backupParamsParametry wykonywania backupu baz przez gbak.exe.-b –t –g -ig
cleanAtGodzina rozpoczęcia procesu usuwania przeterminowanych plików kopii zapasowych.06:00
logDirectoryLokalizacja plików logu.
logArchiveDirectoryLokalizacja plików archiwum logu. 
logFileNameNazwa głównego pliku logu.audit.log
logArchiveFileNameMaska nazwy pliku w archiwum logu.
# – w miejsce tego symbolu wstawiana są kolejne liczby
(1_audit.log, 2_audit.log etc.)
{#}_audit.log
logMaxArchiveFilesMaksymalna liczba plików w archiwum logu.5
logMaxFileSizeMaksymalny rozmiar pojedynczego pliku logu (MB).10

Odinstalowywanie Archiwizatora

W celu odinstalowania Archiwizatora należy uruchomić tę samą wersję Instalatora, która jest zainstalowana na dysku Raks.SQL.Integrator.Installer.exe.