Przywracanie systemu z archiwum bazy danych
W rzadkich przypadkach zdarza się, że baza danych zostaje uszkodzona i należy ją odzyskać. Potrzebny ci będzie plik archiwum tekstowego (szczegóły tworzenia archiwum znajdują się
tutaj) lub kopia bazy danych (informacje na ten temat znajdziesz
tutaj). Zacznij działania jak najszybciej by ograniczyć czas przestoju pracy w firmie do minimum. Elementem tego procesu będzie też próba odzyskania danych wprowadzonych do systemu po czasie utworzenia ostatniego archiwum bądź kopii bazy danych.
Jeśli, zgodnie z zaleceniami, używasz kronikowania, przejdź do tej strony, aby poznać dalsze kroki postępowania. Włączone kronikowanie pozwoli ci na utworzenie nowej rzeczywistej bazy danych dużo szybciej niż opisano to w poniższej metodzie. Jeżeli nie używasz kronikowania, zalecane działania są następujące:
- Przejdź do ostatniego nieuszkodzonego pliku archiwum bądź kopii bazy danych:
- Jeżeli posiadasz kopię bazy danych, przenieś ją do głównego katalogu aplikacji i zmień jej nazwę na "HANSA.HDB" (poprzedni pilk "HANSA.HDB" powinien być usunięty z tego katalogu). Zaloguj się, aby sprawdzić czy kopia jest nieuszkodzona.
- Jeżeli nie posiadasz kopii bazy danych i musisz system odzyskać z archiwum tekstowego, postępuj zgodnie z instrukcją na tej stronie. W dużych systemach przywracanie bazy danych z archiwum może być czasochłonne.
- Baza danych, która powstanie w wyniku wykonania kroku 1 stanie się twoją rzeczywistą bazą danych. Trzeba będzie odzyskać część danych z uszkodzonej bazy danych, przygotuj się, że mogą być potrzebne dodatkowe zasoby.
Otwórz wszystkie konieczne ustawienia serii numerów i w każdym przypadku utwórz nową sekwencję numerów, która pozostawi dużą przestrzeń po ostatnio użytym numerze. W przypadku kontrahentów oraz towarów możesz to zrobić ustawieniu Domyślne serie numerów w module System.
- Pozwól użytkownikom zalogować się do systemu i rozpocząć pracę, ale upewnij się, że będą oni wykonywali jedynie najbardziej niezbędne czynności. Może zechcesz odebrać dostęp do mniej istotnych i mniej używanych opcji, posłuż się ustawieniem Grup dostępu.
- Spróbuj teraz odzyskać dane, które były wprowadzone do już uszkodzonej bazy danych po ostatnim zduplikowaniu bazy, lub po ostatnim utworzeniu archiwum tekstowego. Być może będziesz musiał wyeksportować plik "Archiwum tekstowe bazy danych" lub "Dane bez struktury" z uszkodzonej bazy danych. Następnie zaimportuj dane z tego pliku do testowej bazy danych. Znajdź ostatnio wprowadzone dane w tej bazie danych i wyeksportuj je używając odpowiedniego polecenia eksportu w module Integracja. Eksport Kartotek podstawowych będzie szczególnie użyteczny, ponieważ pozwoli na wyeksportowanie do pliku określonego zakresu rekordów z każdej księgi pomocniczej. Na koniec zaimportuj te dane do bazy danych utworzonej w kroku 1 (do nowej rzeczywistej bazy danych). Opcja "Dane bez struktury" jest opisana na tej stronie, natomiast używanie poleceń eksportu - tutaj.
Jeżeli nie jesteś w stanie utworzyć "Archiwum tekstowego bazy danych" ani "Danych bez struktury" z uszkodzonej bazy danych, będziesz zmuszony odzyskać dane z innych źródeł - na przykład dokumentów papierowych, a następnie wprowadzić dane ręcznie do rzeczywistej bazy danych.
Szczegółowe dokumentowanie każdego kroku procesu odzyskania bazy danych jest bardzo ważne. W czasie odtwarzania danych, zachowanie wszystkich szczegółów pozwoli ci na upewnienie się co dokładnie zostało, a co nie zostało odzyskane. Pozwoli to również wyjaśnić braki w numeracji faktur i innych dokumentów przed urzędami (wynikające z kroku 2).
Zauważ, że jeżeli używasz kronikowania, wgranie dziennika do ostatniej dostępnej bazy danych będzie znacznie szybszym i pewniejszym sposobem odtworzenia danych wprowadzonych do uszkodzonej bazy po ostatnim jej skopiowaniu lub utworzeniu archiwum tekstowego. Nie będziesz musiał wówczas uruchamiać równocześnie dwóch systemów - rzeczywistego i testowego, jak opisano to w krokach 2-4 powyżej, chyba że widzisz potrzebę upewnienia się, że udało ci się odtworzyć dane.
Poniżej zostanie szczegółowo opisany sposób odtworzenia bazy danych z archiwum tekstowego, jak wspomniano w kroku 1ii powyżej. Ze względu na prędkość zaleca się, aby w instalacjach wielostanowiskowych proces odbudowy bazy danych wykonywany był na serwerze, z użyciem Command line (Linux i Mac OS X) lub aplikacji serwisowej (Windows). Jeżeli nie jest to możliwe, użyj stanowiska klienckiego, a następnie skopiuj plik "HANSA.HDB" na serwer. Jeżeli posiadasz osobne archiwa dla różnych firm w bazie danych, należy je zaimportować oddzielnie. Próba importowania plików przy równoczesnym użyciu różnych stanowisk klienckich może zakończyć się utratą danych.
Aby odbudować bazę danych z archiwum należy postępować zgodnie z poniższymi krokami:
- Przenieś starą bazę danych (plik o nazwie "HANSA.HDB") do innego katalogu/ miejsca na dysku. Możesz nadać plikowi starej bazy danych nową nazwę, która identyfikowałaby jego zawartość.
- Usuń plik bazy danych "HANSA.HDB" z katalogu zawierającego aplikację systemu Enterprise. Kliknij dwukrotnie przycisk aplikacji programu Hansa wymuszając w ten sposób utworzenie nowej bazy danych, tak jak zostało to opisane tutaj.
! | Aby odbudować bazę danych należy wczytać archiwum zawsze do pustej bazy danych, unikając w ten sposób możliwości nadpisania danych, co mogłoby spowodować uszkodzenie bazy danych. |
|
Pliki "DBDEF.TXT" oraz "DEFAULT.TXT" powinny znajdować się w tym samym katalogu co aplikacja Enterprise. Pliki zawierają istotne informacje wykorzystywane w trakcie tworzenia nowej bazy danych oraz nowych firm. Jeżeli któregoś z tych plików brakuje, system może pracować w inny sposób niż oczekuje tego użytkownik.
- Zalecane jest, aby z uwagi na prędkość użyć Command line lub aplikacji serwisowej przy importowaniu pliku archiwum tekstowego. Przejdź do kroku 10 poniżej. Jeżeli nie jest to możliwe, uruchom normalnie interfejs graficzny aplikacji Enterprise. Gdy pojawi się okno powitalne, kliknij przycisk "Importuj archiwum":

- Pojawi się okno "Dostępne pliki do importu". Jest to lista plików archiwów tekstowych. Twoje archiwum tekstowe, aby było widoczne na tej liście, musi znajdować się w głównym folderze aplikacji Enterprise by HansaWorld, bądź w jednym z katalogów "Setup" lub "Backup" wewnątrz tego folderu. Plik musi też mieć rozszerzenie .txt.
Na tej liście, obok nazwy każdego pliku archiwum widnieje data utworzenia pliku, a także opis dodany w czasie tworzenia pliku (patrz krok 4 na tej stronie).

- Zaznacz plik, który chcesz zaimportować (czyli archiwum, z którego chcesz przywrócić system), i wciśnij Enter (bądź też kliknij dwukrotnie wybrany plik). Dane zostaną zaimportowane.
Jeżeli twoje archiwum nie jest widoczne na liście, ponieważ nie znajduje się w odpowiednim katalogu lub nie posiada rozszerzenia .txt, wykonaj poniższe kroki:
- Jeżeli jest nadal otwarta, zamknij listę dostępnych plików importu.
- Pojawi się okno "Wybierz firmę": dwukrotnie kliknij pierwszą opcję na liście (oznaczoną "1") lub kliknij raz i wciśnij Enter.
- Gdy pojawi się Okno Główne, wybierz moduł System i użyj skrótu klawiszowego Ctrl-Shift-I/⌘-Shift-I, aby otworzyć okno Importów:

- Wybierz opcję "Ręczny wybór pliku" i wciśnij Enter (lub kliknij dwukrotnie).
Gdy otworzy się okno dialogowe "Otwórz plik", zlokalizuj archiwum i otwórz je.

Dane zostaną zaimportowane.
- Jeżeli pracujesz na serwerze Linux lub Mac OS X i używasz aplikacji command line, uruchom archiwum poprzez wpisanie:
- ./HansaWorld Backup/TBXXXXXX.TXT &
- Uruchamia aplikację serwerową Enterprise by HansaWorld oraz importuje plik archiwum bądź przykładowych danych TBXXXXXX.TXT. W tym przykładzie plik jest w folderze "Backup", wewnątrz głównego katalogu aplikacji.
Postęp importu będzie pokazany w oknie terminala. Kiedy się skończy, aplikacja zostanie zamknięta. Uruchom ją poprzez wpisanie:
- ./HansaWorld &
Jeżeli korzystasz z aplikacji serwisowej (Windows), wprowadź ścieżkę oraz nazwę pliku archiwum (Backup/TBXXXXXX.TXT w tym przykładzie) do pliku "parameters.txt" przed uruchomieniem aplikacji, zgodnie z opisem w sekcji "Uruchamianie serwera i jego parametry" w instrukcji Rozpoczęcie pracy z istniejącą bazą danych i firmą. Po zakończeniu importu aplikacja zostanie zamknięta (może będziesz potrzebował prześledzić log o nazwie "hansa.log", aby sprawdzić, w którym momencie aplikacja zostanie zamknięta). Usuń ścieżkę oraz nazwę pliku archiwum z pliku "parameters.txt" i uruchom aplikację w normalny sposób. Ewentualnie możesz użyć interfejsu graficznego w celu zaimportowania archiwum tekstowego zgodnie z opisem w krokach 1-9 powyżej.
Jeżeli twój sprzęt ma wystaczająco dużo RAMu, archiwum zostanie zaimportowane znacznie szybciej gdy użyjesz opcji "Massive Cache" do zwiększenia wielkości pamięci cache. Robi się to poprzez wprowadzenie dodatkowego parametru w command line lub w pliku "parameters.txt", jak poniżej:
- ./HansaWorld --db-cache=1G Backup/TBXXXXXX.TXT
"1G" utworzy 1Gb pamięci cache. Możesz ustawić wielkość pamięci cache używając K, M (nie Mb) lub G (nie Gb). Parametr nie może zawierać żadnych spacji.
Domyślnie aplikacja serwerowa Enterprise by HansaWorld posiada cache o wielkości 3.2 Mb. Poprzez zwiększenie wielkości pamięci cache poprawisz szybkość operacyjną, ponieważ dane znajdujące się w pamięci cache są szybciej dostępne niż dane na dysku. Dane w pamięci cache to dane, które już były użyte w danej sesji roboczej. Optymalna wielkość cache będzie się wahała, w zależności od typu serwera, wielkości RAM oraz systemu operacyjnego, i może być ustalona tylko poprzez eksperymentowanie z tym narzędziem. Dobrą radą, szczególnie dla serwerów Windows oraz serwerów z mniejszym RAMem jest, aby nigdy nie dedykować więcej niż 40% RAMu danej maszyny dla pamięci cache. Jeżeli cache jest zbyt duża, pamięć dostępna dla innych zadań może być niewystarczająca. Gdy komputer wyczerpie całą pamięć, zacznie używać twardego dysku jako dodatkowej pamięci operacyjnej. To spowoduje znaczne spowolnienie pracy i może doprowadzić do niestabilności systemu. Jeżeli serwer jest maszyną 32-bitową, maksymalny rozmiar pamięci cache mieści się w przedziale od 1 do 3.5 Gb, w zależności od od sprzętu i systemu operacyjnego. Jeśli serwer jest maszyną 64-bitową z 64-bitowym systemem operacyjnym (Mac OS X lub Linux) oraz dużą pamięcią RAM, i jeżeli używasz 64-bitowej wersji Enterprise by HansaWorld, wówczas granica 40% nie jest już tak istotna. Na przykład, jeżeli serwer ma 12 Gb RAMu, możesz dedykować 10 Gb dla pamięci cache.
Jeżeli zwiększysz pamięć cache znacznie, nastąpi przerwa pomiędzy zakończeniem importu a zamknięciem aplikacji. W tym czasie zawartość pamięci cache będzie zapisana na dysku. Im większa pamięć cache, tym dłużej to potrwa.
---
W tym rozdziale: