2. diel - Derby DB - Spustenie a vypnutie databázy
V minulej lekcii, Derby DB - Informácie, nastavenie prostredia , sme sa venovali nastavenie databázy Apache Derby. V dnešnom tutoriále túto databázu spustíme.
Spustenie a ukončenie Derby Databáza
Všetky príkazy pre ovládanie a nastavenie Derby DB sa nachádzajú v
adresári ..\db\bin
. Ako vidíte, dané súbory sú zdvojené.
Jedna verzia je typu s koncovkou * .bat pre používateľov Windows OS a druhá
bez koncovky pre sh pre užívateľov Linux.
db\bin\setEmbeddedCP
- Použitím setEmbeddedCP skriptu nakopírujeme Derby libs (derby.jar, derbytools.jar, derbyoptionaltools.jar) pre vstavané (embedded) prostredia doCLASSPATH
. Čo znamená vstavané prostredí si povieme neskôr.db\bin\setNetworkServerCP
- Vloží potrebné libs (derbynet.jar) pre spustenie Derby DB Servera doCLASSPATH
.db\bin\setNetworkClientCP
- Vloží potrebné libs (derbyclient.jar, derbytools.jar and derbyoptionaltools.jar) pre spojenie klienta s Derby DB Serverom doCLASSPATH
.db\bin\startNetworkServer
- Spustí Derby DB server na miestnom stroji.db\bin\stopNetworkServer
- Ukončí Derby DB server na miestnom stroji.
Prvé tri príkazy (skripty) teraz nerieši a ani ich v kurze nevyužijeme. Zaujímajú nás len posledné dva príkazy pre spustenie a ukončenie. Pri spustení je vhodné je spustiť ako administrátor, predídete tak problémom s právami prístupu.
Spustiť DerbyDB možno niekoľkými spôsobmi. Najjednoduchšie je v
Commanderu spustiť startNetworkServer
, kedy sa nám objaví okno,
alebo spustiť príkazový riadok (cmd.exe
) opäť s rovnakým
príkazom a DerbyDB sa nám spustí. Defaultne tento databázový server
pobeží na porte 1527. Takto spustená databázy nielen, že
beží na lokálnom porte, ale neumožňuje iný prístup klienta, než z
localhost. Aby som bol presný, spojenie sa urobí, ale Derby DB Server po
vyhodnotení prichádzajúceho spojenia cez LAN, MAN a WAN vykoná odpojenie. Ak
sme si nastavili systémovú premennú PATH
na cestu k
\db\bin
, potom sú príkazy pre spustenie a vypnutie databázového
servera prístupné odkiaľkoľvek a nie je nutné riešiť cestu.
Ukončenie možno vykonávať viacerými spôsobmi. Ako prvý a
najjednoduchšie je opäť spustiť v Commanderu stopNetworkServer
,
alternatívne funguje aj násilné prerušenie cez príkazový skratku
CTRL + C. Avšak v tomto prípade je nutné mať aktívne
okno, ktoré vykonáva výpis spustené databázy.
POZN. CHYBA 6828 - SPUSTENIE DERBY DB U České LOKALIZÁCIA OPERAČNÉHO SYSTÉMU
Hoci mám rád projekty pod Apache, tak aj tu sa ukazuje, že nie je všetko
zlato, čo sa blyští. Slabina Open Source sa tu ukazuje v priamom prenose. Derby DB má nahlásenú
chybu 6828, ktorá neumožňuje spustiť Derby DB pod českou lokalizáciou
OS. Pokiaľ máte anglickú verziu Windows, problém sa vás netýka. Hoci
je chyba FIXED, tak sa stále prejavuje u všetkých verzií danej DB 10.9,
10.10, 10.11, 10.12, 10.13. Ak danú databázu chceme spustiť, tak nám
nezostáva nič iné, než chybu obísť. To vykonáme tým, že zrušíme
českú lokalizáciu a databázu budeme spúšťať v anglickej verzii.
Upravíme spúšťací skript (startNetworkServer.bat
) a to tak,
že tu pridáme tento riadok set DERBY_OPTS=-Duser.language=en
.
Spustenie na nedefaultním porte
Samozrejme DerbyDB umožňuje spustiť databázový server aj na inom, než
defaultným portu. Do príkazového riadku (cmd.exe
) vložíme
príkaz startNetworkServer -p 3388
, čo spustí Derby DB Server na
porte 3388. Analogicky, ak zmeníte číslo portu v príkaze, tak zmeníte
reálne číslo portu. Ako vidíte, na výpise programu CurrPorts
tak skutočne na porte 3388 načúvame.
Ovšem ak chceme ukončiť Derby Server bežiaci na inom porte, je nutné ho
ukončiť cez prerušenia CTRL + C alebo cez novo
vytvorený príkazový riadok a zadaním príkazu
stopNetworkServer -p 3388
, kde číslo v parametri je číslo
vášho portu.
Spustenie pre prístup zo siete
Spustenie s umožnením pripojenia cez sieť (LAN, MAN, WAN) je nutné
nastaviť opäť cez príkazový riadok. Vložíme príkaz
startNetworkServer -h 192.168.123.9
, kde parametrom h
je vaša IP adresa, na ktorej server pobeží alebo názov domény, pod ktorou
je spustený. Avšak v tomto prípade prestane byť databáza prístupná z
localhost.
Ďalšie možnosti spustenia DerbyDB serveri sú:
startNetworkServer -h moje.domena.cz
- umožníme pristupovať k db z danej doménystartNetworkServer -h 0.0.0.0
- umožníme pristupovať k db z localhost aj zo siete (LAN, MAN, WAN)- `StartNetworkServer -h moje.domena.cz -p 4444 ** - umožníme pristupovať k db z danej domény na porte 4444
- `StartNetworkServer -h 0.0.0.0 -p 4444 ** - umožníme pristupovať k db z localhost aj zo siete (LAN, MAN, WAN) na porte 4444
Spustenie IJ nástroja (príkazu)
IJ nástroj je veľmi dôležitý pre prácu s Derby DB z pohľadu
administrátora. Prakticky všetko možno riešiť v Derby buď cez IJ nástroj
alebo programátorské cez JDBC. IJ nástroj možno spustiť bez spustenia
databázy a dokonca pri vykonávaní napojení si databázu spustí úplne sám.
Spustenie je veľmi primitívny a každý príkaz je potrebné ukončiť
bodkočiarkou ;
. Na obrázku dole sme si v prvom prípade vykonali
ukončenia nástroje ij a v druhom prípade sme vykonali výpis pomocníka.
Nabudúce, Kvíz - Nastavenie, zapnutie a vypnutie Derby DB v Jave , si rozoberieme prihlasovanie k databáze.
V nasledujúcom kvíze, Kvíz - Nastavenie, zapnutie a vypnutie Derby DB v Jave, si vyskúšame nadobudnuté skúsenosti z predchádzajúcich lekcií.