IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

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, derbyoptional­tools.jar) pre vstavané (embedded) prostredia do CLASSPATH. Čo znamená vstavané prostredí si povieme neskôr.
  • db\bin\setNetworkServerCP - Vloží potrebné libs (derbynet.jar) pre spustenie Derby DB Servera do CLASSPATH.
  • db\bin\setNetworkClientCP - Vloží potrebné libs (derbyclient.jar, derbytools.jar and derbyoptional­tools.jar) pre spojenie klienta s Derby DB Serverom do CLASSPATH.
  • 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.

Spustenie Apache Derby - DerbyDb

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.

Ukončenie databázy Apache Derby - DerbyDb

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.

Chyba6828 v Apache Derby - DerbyDb

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.

Spustenie Apache Derby na inom porte - DerbyDb

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.

Ukončenie Apache Derby na inom porte - DerbyDb

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.

Spustenie Apache Derby cez sieť - DerbyDb

Ďalšie možnosti spustenia DerbyDB serveri sú:

  • startNetworkServer -h moje.domena.cz - umožníme pristupovať k db z danej domény
  • startNetworkServer -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.

Spustenie IJ pre Apache Derby - DerbyDb

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í.


 

Predchádzajúci článok
Derby DB - Informácie, nastavenie prostredia
Všetky články v sekcii
DerbyDb
Preskočiť článok
(neodporúčame)
Kvíz - Nastavenie, zapnutie a vypnutie Derby DB v Jave
Článok pre vás napísal Robert Michalovič
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Programuji převážně v Javě SE,EE a trochu nativním C a CUDA. více viz.https://cz.linkedin.com/in/robert-michalovic
Aktivity