QBS >> Elementy standardowe >> Q-SEP

QBS Logo

Q-SEP
serwer baz danych

Jednym z elementów Q-Line 3000 jest serwer baz danych Q-SEP.

Jest to serwer transakcjny (z zagnieżdżonymi podtransakcjami). W chwili obecnej nie obsługuje zapytań SQL'owych.

Logo Q-SEP'a Q-SEP/Win może być uruchamiany na komputerach wyposażonych w system operacyjny serii Windows.

Logo LinuxaQ-SEP/Lin może być uruchamiany na komputerach wyposażonych w system operacyjny Linux. Informacja na temat instalacji serwera i konfiguracji programu klienckiego oraz kompilowania Q-SEP pod Linuxem

Miło nam poinformować, że główny konstruktor serwera baz danych Q-SEP - Andrzej Gąsienica-Samek zdobył
tytuł Mistrza Świata w Programowaniu Zespołowym:
International Collegiate Programming Contest - Marzec 2003

Ekran główny programu Q-SEP

Przeznaczenie

Przeznaczeniem serwera baz danych Q-SEP jest obsługa danych w programach Q-Line 3000.

Serwer ten wykorzystywany jest w dwojaki sposób:

Instalacja

Programy jednostanowiskowe - instalacja dokonywana jest automatycznie wraz z instalacją programu. Przy czym Q-SEP umieszczany jest w katalogu programu. Natomiast jego uruchomienie odbywa się automatycznie po uruchomieniu programu.

Programy sieciowe - instalacja dokonywana jest w sposób automatyczny podczas instalacji programu. Przy czym program i Q-SEP umieszczane w dwóch różnych katalogach.
W razie konieczności przeinstalowania serwera Q-SEP na inny komputer należy wyłączyć go i następnie przekopiować katalog na komputer docelowy.

Zasada działania

Serwer baz danych nasłuchuje na ustalonym porcie. Odbiera zlecenia od programów klienckich i kolejno je realizuje. Programy klientów, muszą znać adres serwera gdzie będą zwracać się ze zleceniami. W katlogu programu klienta znajduje się on w pliku qline.txt w rekordzie sep. Są tam dwie linijki
    Sep = record
{
Host = "adres_komputera" ;
Port = 2507;
};
Uwaga! Czasami serwer musi w wyniku jakiegoś zlecenia założyć nowe uporządkowanie na bazie danych, wtedy przy większej ilości danych może być obserwowalne chwilowe zwolnienie pracy aplikacji.

Uruchamianie

W wersji sieciowej aby uruchomić serwer, wystarczy uruchomić plik sep.exe.

Uwaga! Na komputerze musi być zainstalowana obsługa sieci TCP/IP

Znaczenie plików

Zwykle serwer baz danych Q-SEP jest instalowany w katalogu .../q-sep/ , który posiada następująca strukturę:

.../q-sep
|
+---- dat
| |
| + autoinc.qsr
| + struct .qsr
| + różne pliki *.dat
|
+ config .qsr
+ errors .txt
+ license .bin
+ logo .bmp
+ nativesep.dll
+ sep .exe
+ sep .map
Informacje o plikach serwera baz danych Q-SEP
dat/autoincr.qsr plik, w którym Q-SEP zapisuje liczniki baz i liczniki transakcji
dat/struct.qsr plik, w którym zapisane są struktury tabel obsługiwanych przez serwer Q-SEP oraz podane są reguły porównywania

Uwaga dla konstruktorów!
Plik ten jest tworzony w sposób automatyczny przez programy klienckie. Osoba, tworząca program, po wykonaniu modyfikacji struktur w pliku (plikach) konstrukcyjnym *.qcon uruchamia program. Program automatycznie tworzy właściwy struct.qsr, który należy wgrać do katalogu Q-SEP'a.
Uwaga dla administratorów!
Plik z katalogu dat powinien być identyczny z plikiem tworzonym przez program kliencji. Gdy są różne należy powiadomić o tym producenta! Nie należy ich nadgrywać - może to spowodować awarię programu.

dat/różne pliki *.dat pliki z danymi konkretnych tabel obsługiwane przez serwer.
config.qsr plik konfigurujący pracę serwera Q-SEP
  • TimeAutoincId {_LastTimeAutoinc} Informacja, który z liczników jest licznikiem transakcji
  • IndexFilename {'Index.TMP'} Nazwa pliku indeksów
  • IndexFileClusterShl {12}
  • IndexFileMinBuffer {128 {2048}}
  • StructFilename {'DAT/Struct.QSR'} Informacja, który z plików przechowuje struktury tabel
  • INetPort {2507} Port TCP/IP na którym nasłuchuje serwer
  • AUTOINCFILENAME {'DAT/autoinc.qsr'} Informacja, który z plików przechowuje liczniki tabel
errors.txt Plik "ślad" pracy serwera
license.bin Plik licencji, w którym przechowywane są dane o użytkowniku oraz informacje o jego uprawnieniach
logo.bmp plik graficzny
nativesep.dll plik wykonawczy serwera, zintegrowanego z programami jednostanowiskowymi
sep.exe plik wykonawczy serwera, uruchamiany niezależnie
sep.map informacja potrzebna do podawania szczegółowych wypisów podczas wystąpienia błędów

Pliki w praktyce

By dokładnie zapoznać się z plikami konfiguracyjnymi proponujemy zainstalować sobie program Q-Adres 3000 i dokładnie przyjrzeć się plikom w podkatalogu /dat.

Q-Adres 3000 można zainstalować bezpośrednio z jego strony internetowej

Czego nie wolno!

Czynności absolutnie zabronione ze wzgledu na możliwość nieodwracalnego "rozsynchronizowania" danych:

  1. Majstrować przy plikach! - Pliki należące do serwera Q-SEP mogą być obsługiwane wyłącznie przez sam program. Zabronione jest poprawianie tych plików innymi programami np. edytorami tekstowymi.

  2. Przegrywać plików pomiędzy serwerami - Wszystkie pliki serwera Q-SEP stanowią integralną całość. Zabronione jest przegrywanie tych plików pomiędzy róznymi serwerami. Na przykład pomiędzy serwerem, który obsługuje system i kopią tegoż serwera!

Czynności niezalecane:

  1. Wyłączać serwera przez wyłączenie komputera ("twarde")

Działania po awarii

Serwer baz danych Q-SEP został napisany tak aby zminimalizować błędy wynikające na przykład z:

Prosimy jednak pamiętać iż wyłączając w nieprawidłowy sposób serwer Q-SEP istnieje ryzyko pojawienia się błędu. Wynika to między innymi z tego że system operacyjny nieprawidłowo wyłączony mógł nie zapisać wszystkich danych, nie zaś z wady konstrukcyjnej naszego programu.

Po awarii należy upewnić się, że wszystkie dane są pamiętane lub (najłatwiej poprzez sprawdzenie ostatnio wprowadzanych pozycji), zaimportować ostatnią kopię programu z archiwum *.qtr.

Jeśli po awarii serwer "nie chce wstać" - należy (uwaga czynności te powinna wykonywać osoba znająca podstawy obsługi komputera (struktura dysku, kopiowanie plików .... )

  1. Zrobić kopię całego katalogu Q-SEP!
  2. wykasować wszystkie pliki *.dat (SKASOWAĆ DANE) z serwera,
  3. uruchomić go a następnie zaimportować dane z ostatniej kopii. ( W takich przypadkach firma QBS często jest w stanie "uratować większość danych" - gdyż uszkodzeniu ulega zazwyczaj tylko jedna tabela. Usługa taka realizowana jest odpłatnie.)
  4. Jeżeli skasowanie danych nie daje efektu, należy podejrzewać że uszkodzeniu uległy inne pliki.
  5. W powyższym przypadku. Jeszcze raz wgrać wersję instalacyjną katalogu Q-SEP i podmienić katalog DAT z kopii (punkt 1) za wyjątkiem pliku struct.qsr