WinBase602 SQL Server - Linux verze =================================== WinBase602 je SQL server a soubor klientskych programu pro operacni systemy Windows 95/98/NT/2000, Novell Netware a Linux RedHat. Pro Linux jsou k dispozici zejmena databazovy SQL server (wbserver) a CGI klient (wbcgi). Sluzba CGI klienta je pripravena pro praci s Web serverem Apache, ktery je mozne ziskat ze stejnych zdroju, jako jste ziskali operacni system. WinBase SQL server poskytuje databazové sluzby klientum pripojenym protokolem TCP/IP. 1. Distribuce ------------- WinBase602 pro operacni systemy Unix je mozne ziskat na CD nebo si ji stahnout z www.software602.cz/winbase. Jsou k dispozici bud jak samotne soubory urcene primo k nakopirovani, tak soubor wbserver.tgz, ve kterem jsou vsechny soubory zkomprimovany. Manualy jsou k dispozici jak v tistene podobe, tak elektronicke (na CD nebo na webu). 1.1 Licence a registrace SQL server je treba pro bezne uzivani zdarma registrovat (zadanim registracního cisla). Po vytvorení databaze (viz dale) je server v TRIAL rezimu licence pro Intranet pristup i Internet (WWW) pristup. Pokud do 30 dnu neprobehne zadani spravnych licencnich cisel, tyto TRIAL licence zmizi a zustane pouze jedina Intranet licence. Licence i registraci je mozné zadat pomoci programku wblicenc, nebo snaze zapsanim do textoveho souboru wbkernel.ini (umisteneho ve stejnem adresari jako databazovy soubor) ve tvaru: [LICENCES] LIC1=WDY-01099999-XXX-XXXX LIC2=WDW-01099999-YYY-YYYY atd. 2. Instalace - vyber adresaru ----------------------------- Soubory pro dany operacni system je zapotrebi rucne nakopirovat na patricne misto. Pokud mate pouze soubor wbserver.tgz, je nutno jej dekomprimovat pomoci tar -xzf wbserver.tgz, dalsi postup je pak stejny. Umisteni jednotlivych souboru zavisi na rozhodnuti spravce systemu, ale jsou urcite zvyklosti, kterymi je vhodne se ridit. Uzivatelske aplikace se vetsinou instaluji do podadresaru /usr/local/ . Na nekterych unixech (predevsim Linux) vyznam tohoto adresare ponekud zaniknul a uzivatelske aplikace se instaluji primo do adresarove struktury pod /usr/, i kdyz /usr/local/ je mozne pouzivat i nadale. Spusteni WinBase602 SQL serveru lze provest pod uctem bezneho uzivatele, ale doporucujeme pro normalni provoz pouzit prava root. CGI klient pracuje pod uctem pridelenym web serverm Apache, tj. obvykle nobody/nogroup. 3. Instalace - umisteni jednotlivych souboru -------------------------------------------- 3.1 wbserver - je SQL server poskytujici klientum pres rozhrani TCP/IP sve databazove sluzby. Jeho standardni umisteni je /usr/local/sbin/wbserver a vlastnikem je root. 3.2 wbkernel.ini - je konfiguracni soubor databaze. Ve stejnem adresari jako je soubor wbkernel.ini bude umisten i databazovy soubor wb5.fil, transakcni soubor transact.fil, zurnal aktualizaci journal.fil a textovy soubor s logem wbsqllog.txt (posledni tri soubory lze pomoci nastaveni ve wbkernel.ini umistit i na jine misto). Pokud databazove soubory .fil nebo .log neexistuji, tak se pri prvnim spusteni serveru vytvori nove, prazdne. Do adresare, kde je wbkernel.ini, musi mit wbserver plny pristup. Obsah konfiguracniho souboru je popsan dale nebo v manualovych strankach nebo v dokumentaci. 3.3 wbberle, wblicenc, wbinst - jsou pomocne programy pro SQL server, viz nize. wbinst zalozi novou databazi tim, ze vytvori na pozadovanem miste soubor wbkernel.ini s pozadovanym jmenem serveru. wbberle je programek pro opravu vazne poskozene databaze. wblicenc zkontroluje a ulozi licencni cislo pro rozsireni wbserveru do souboru wbkernel.ini, coz lze udelat i rucne (viz vyse). Vsechny tyto soubory nejsou pro provoz nutne, ale je mozne je umistit do /usr/local/bin/ a priradit jim pouze prava pro vlastnika wbserveru. 3.4 wbserver.sh - ukazkovy script jak spoustet wbserver (nutne upravit cesty podle skutecnosti!). 3.5 wbcgi - CGI klient WinBase602. Pomoci tohoto klienta a web serveru je mozne vytvaret dynamicke webove stranky a tak pristupovat k datum ulozenym ve WinBase602 z internetu. Umisteni tohot souboru je zavisle na konfiguraci web serveru, na umisteni adresare cgi-bin. Na Linuxu je to vetsinou do /home/httpd/cgi-bin/ . Dalsi popis je v souboru wbcgi.txt nebo v manualovych strankach a v dokumentaci. 3.6 wbcl - jednoduchy klient WinBase602, ktery umi zpracovavat sql prikazy a zobrazit jejich vystup. Parametry si umi nacist z wbcl.conf (umisteny v etc) nebo z prikazove radky. napoveda: wbcl -h Novinka! Zmena!!!! Pro provoz wbcgi a wbcl je zapotrebi dynamicka knihovna libwb602.so, kterou je nutno nakopirovat do /usr/lib a pote spustit ldconfig a nebo restartovat pocitac. 3.7 wbcgi.conf - konfiguracni soubor CGI klienta. CGI klient jej hleda postupne v /usr/local/etc/ a nebo primo v /etc/ . Dalsi popis stejny jako wbcgi. 3.8 wbkernel.ini.1, winbase602.1, wbberle.5, wbcgi.5, wbserver.8 - soubory s cislem na konci jsou manualove stranky, kde cislo v pripone udava cislo sekce, do ktere soubor patri. Manualove stranky patri do /usr/man/manx/, nebo lepe do /usr/local/man/manx/ , kde x v poslednim manx znamena cislo sekce (shodne s cislem v pripone souboru). Pri prvnim pouziti si system sam tyto stranky zformatuje a prelozi. 4. Konfigurace -------------- Cely system se konfiguruje dvema soubory wbkernel.ini (pro SQL server) a wbcgi.conf (pro CGI klienta). 4.1 wbkernel.ini - ini soubor pro wbserver (ve strukture prevzane z Windows), je umisten ve stejnem adresari jako .fil soubory. Standardne obsahuje pouze sekci Network s parametrem Servername se jmenem serveru (unikatnim v siti): [NETWORK] SERVERNAME=unix-test 4.2 wbcgi.conf je konfiguracni soubor CGI klienta standardne ulozeny v /usr/local/etc/wbcgi.conf Obsahuje sekce Logging, Setup, Output, Input a Servers. Krome sekce Servers jsou ostatni stejne jako pro windows, sekce Servers obsahuje seznam registrovanych (a tedy jedine pouzitelnych ) databazovych serveru: [Servers] Name1=wb6unix Addr1=194.108.5.165 ip adresa nebo hostname stroje, kde bezi databazovy server wb6unix IPPort1=5021 cislo portu definovane pro dany server, implicitne 5001 Name2=... Addr2=... IPPort2=...atd K jednomu serveru tak prislusi paramatry Namex a Addrx (a nepovinny IPPortx, potrebny v pripade, kdy na jedne IP adrese bezi dva a vice serveru), kde x je poradove cislo registrovaneho serveru. CGI klient pri svem kazdem spusteni prochazi sekvencne tento seznam, az nalezne server pozadovasny v URL nebo skonci s chybou kdyz server tohoto jmena nenalezne. Prohledava se poporade od 1, max do 999. Jako ip adresu lze pouzit i "localhost" nebo "127.0.0.1" pro server bezici na lokalnim pocitaci. Ostatni sekce jsou shodne s Windows verzi a jsou popsane v manualu. 4.3 Nastaveni syslog.conf wbserver umoznuje zapisovat vsechny generovane hlasky nejenom do svych souboru, ale umoznuje i posilani techto hlasek systemovemu logovacimu deamonu syslogd. V souboru /etc/syslog.conf je nastaveni modulu syslogd. Pokud je nastaven parametr -l pri spousteni wbserveru, je vhodne pridat do syslog.conf tyto dva radky: !wbserver *.* /var/log/wbserver.log Mezera neni platny znak, na oddeleni je mozne pouzit tabelatory. Prvni radek zajisti, ze nasledujici radek bude zpracovavat zpravy z wbserver. Na druhem radku je definovano, ze se budou vsechny zpravy (ale uz pouze od wbserver) zapisovat do souboru /var/log/wbserver.log (ten je potreba vytvorit). Pote je potreba restartovat syslogd. Ve wbserver.log jsou pak zaznamenany stejne hlasky jako ve standardnim chybovem souboru wbsqllog.txt navic doplnene o atualni cas. Tyto upravy je nutne provest pouze v pripade, ze chcete syslog pouzivat a spoustite wbserver s paramatrem -l. Vsechny hlasky se stejne zaznamenaji v chybovem souboru wbsqllog.txt. Obdobne se postupuje pri nastaveni syslogd pro wbcgi. Syslogd poskytuje mnohem vice moznosti, ktere jsou popsany v jeho dokumentaci nebo manualovych strankach. 5. Spusteni SQL serveru ----------------------- 5.1 Parametry prikazove radky programu wbserver Parametry lze uvest v libovolnem poradi, ale je nutne dodrzet mezery mezi prepinaci a naopak nevkladat mezery za parametry -f a -p: -f specifikovani cesty k souborum *.fil a ini, povinny parametr -d server se spusti jako deamon bez moznosti interaktivniho ovladani -t zapne tracelog - vypis trasovacich udalosti do log souboru -e zapne errorlog - vypis chybovych hlaseni do log souboru -r zapne repliclog - vypis replikacnich udalosti do log souboru -l zapne syslog - vsechny vypisy do log souboru se budou zaroven posilat do syslogd s prioritou info -p heslo serveru pro sifrovani filu (je-li pouzito). 5.2 Interaktivni rezim SQL serveru Je-li zapnut interaktivni rezim (neni pouzit parametr -d), reaguje server na prikaz spravce. Akce serveru se vyvolavaji stiskem klavesy (+Enter) podle nasledujici tabulky: h Vypsani seznamu funkcnich klaves q Ukonceni serveru u Vypis seznamu pripojenych uzivatelu s IP adresami r Zapnuti/vypnuti vypisovani informaci o replikacich l(e) Zapnuti/vypnuti vypisovani uzivatelskych chyb t Zapnuti/vypnuti vypisovani trasovacich udalosti i Vypsani informace o vyuzite pameti serveru Vse, co se vypisuje na obrazovku se automaticky zapisuje i do logovaciho souboru (wbsqllog.txt implicitne ve stejnem adresari jako wb5.fil). 5.3 Ukoncovani SQL serveru SQL server se ukoncuje signalem 15, zaslanym patricnemu procesu wbserver. Na Linuxu je pri spusteni SQL serveru videt tento proces vicekrat, jsou to jednotlive thready jednoho procesu. Signal pak staci zaslat procesu s nejnizsim cislem PID. Na ukoncovani jsou ve wbserveru ruzne timeouty, proto ukonceni trva jednu az dve minuty. Pred dalsim spustenim je zapotrebi jeste pockat, nez se uvolni vsechna TCP/IP, predevsim od klientu z WIN95. 6. Spousteni pomocnych programu serveru --------------------------------------- 6.1 Program wbinst wbinst -fdir -nservername Zaregistruje novou databazi v adresari dir pod jmenem servername. V zadanem adresari vytvori soubor wbkernel.ini, ostatni soubory serveru vzniknou az po jeho prvnim spusteni. 6.2 Program wblicenc wblicenc -fdir -lcislo_licence Do souboru wbkernel init umisteneho v adresari dir prida zadane cislo_licence. 6.3 Program wbberle wbberle -fdir Provede opravu databazoveho souboru umisteneho v adresari dir. Pouzijte pouze v pripade, ze na tento soubor nelze spustit server. Po oprave exportujte data z databaze a zalozte databazi znova.