602SQL-Úplná dokumentace Index  

Provoz SQL serveru pod Linuxem

Databázový server 602sql pro Linux může běžet buďto na popředí, kdy komunikuje s operátorem prostřednictvím konzole, nebo jako démon na pozadí, kdy jej lze ovládat pouze z klientů a v omezené míře pomocí signálů.

Pro centrální spouštění a zastavování 602SQL serverů slouží od verze 11 utilita nazvaná Server manager. Zde je popisováno pouze ovládání serverů bez Server Manageru, které je také možné.

Instalace SQL serveru je popsána zde.

Parametry příkazové řádky SQL serveru

SQL server akceptuje tyto parametry příkazové řádky:

Pokud není uveden parametr -n, pak:

Parametr -p a heslo je třeba uvést, pokud je databáze zašifrována a chráněna heslem.

Provoz SQL serveru běžícího na popředí

SQL server běžící na popředí lze ovládat z klávesnice a vypisuje přírůstky do svého základního logu na obrazovku. SQL server se spouští na popředí zejména tehdy, pokud je třeba jej co nejjednodušeji zapínat a vypínat podle momentální potřeby.

Spuštění serveru na popředí

SQL server se spouští z konzole (terminálu) na popředí příkazem:

602sqlXX -njmeno_serveru
nebo
602sqlXX
je-li registrován server jediný.

Z klientského prostředí lze spustit server nad lokální databází příkazem Spustit server z popup menu ve stromu serverů na Řídicím panelu. Uživatel v Linuxu musí mít dostatečná práva k databázovému souboru.

Ovládání serveru běžícího na popředí

Server běžící na popředí reaguje na klávesy; seznam akceptovaných kláves a jejich význam se zobrazí po stisku "h". Běh serveru se ukončí klávesou "q".

Provoz SQL serveru běžícího jako démon

SQL server se provozuje jako démon zejména tehdy, pokud má být automaticky spuštěn po startu operačního systému.

Je-li potřeba sledovat na obrazovce log serveru, lze použít příkaz tail -f <cesta k log souboru>.

Spuštění serveru na pozadí a jeho ukončení

SQL server se spouští jako démon, je-li na jeho příkazové řádce uveden parametr -d. Zároveň je vhodné uvést i parametr -P pro vypsání čísla procesu. Ukončení takto spuštěného serveru se provede zasláním signálu TERM příkazem kill <číslo procesu>. Obdobně lze využít nástroje grafického rozhraní pro správu a přehled procesů.

Druhá možnost je používat skript /etc/init.d/s602sqlXX, který hromadně ovládá servery registrované v /etc/602sql s příznakem AUTOSTART=1. Příkaz

/etc/init.d/s602sql11 start
spustí všechny tyto servery na pozadí a přitom zaznamená jejich čísla procesů. Příkaz
/etc/init.d/s602sql11 stop
pak ukončí takto spuštěné servery. K restartování této skupiny serverů lze použít příkaz
/etc/init.d/s602sql11 restart
a ke zjištění stavu serverů příkaz
/etc/init.d/s602sql11 status
Tyto operace může provádět pouze uživatel root. Hromadné ovládání neovlivní ty servery, které buď nemají příznak AUTOSTART nebo tento příznak má prázdnou hodnotu nebo hodnotu 0.

Druhou možnost používají některé Linuxové distribuce ke startování serveru při startu. Pokud to distribuce umožňuje, pak lze příkazem chkconfig s602sql11 -add zajistit automatické provedení "/etc/init.d/602sql11 start" resp. "/etc/init.d/602sql11 stop" při startu resp. ukončení operačního systému.

Tento postup je použit při standardní instalaci pomocí rpm balíčku na SUSE a RedHat a jeho následovníků.

Zjišťování stavu démonů

Seznam procesů běžících démonů lze zjistit programem ps:

 ps u -C 602sql11 --forest
pro distribuce Linuxu RedHat použijte
 ps u -mC 602sql11 --forest
Na každý spuštěný server připadají nejméně čtyři procesy; každý strom ve výpisu odpovídá jednomu serveru.

Jaké porty jsou právě používány běžícími servery lze zjistit příkazem netstat, např.

netstat -npaA inet |grep 602sql

Práva potřebná ke spuštění serveru

Server běží na účet uživatele, který jej spustil, s jednou výjimkou: pokud je server spuštěn uživatelem root a pokud v popisu serveru v souboru /etc/602sql je údaj:
USER=<jméno uživatele>
pak server poběží na účet zadaného uživatele.

Uživatel, na jehož účet server běží, musí mít právo čtení a zápisu na soubory databáze (včetně logů), plus na celý databázový adresář. Musí mít také právo číst a přepsat soubor /etc/602sql a vytvářet soubory v adresáři /etc.

Seznam subsekcí: