IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

1. diel - Derby DB - Informácie, nastavenie prostredia

Prečo Apache Derby? Jedná sa o veľmi jednoduchú, povedal by som až triviálne databázu. Je funkčná, prakticky bez chýb a hlavne je zadarmo. Táto databáza má výhodu, že v nej už neprebieha búrlivý vývoj a teda zmeny medzi jednotlivými verziami, subverzii, takmer nestojí za povšimnutie. To v prípade požadovania stabilného prostredia považujem za drastickú výhodu. V tomto online kurze si predvedieme prácu s touto jednoduchou databáz a to ako z pohľadu programátora (developera), tak aj jej administrovania. Pretože aj vývojár si ju musí nastaviť a sprevádzkovať. K úspešnému používanie je samozrejme nutná základná znalosť relačných databáz, syntaxe SQL a pokročilé znalosti z Javy.

Derby je vždy súčasťou JDK Javy. Nájsť ju môžete vo svojom adresári inštalovaného JDK, je to adresár db, v mojom prípade je cesta C:\Program Files\JavaJDK\db\ alebo si ju môžete stiahnuť z webu Apache Derby DB. Ak ju máte v JDK, potom v nej vidíte dva adresáre \bin a \lib. Adresár \bin obsahuje príkazy pre: spustenie a vypnutie databázy, spustenie konfiguračného príkazu ij, a tiež tu budú uložené vaše databázy, až si ich vyrobíte. Adresár \lib obsahuje externé * .jar, ktoré sa pridávajú do CLASSPATH, ak budete potrebovať objekty v nich obsiahnuté. Iba pripomeniem, že Derby DB obsiahnutá v JDK nie je aktuálne. Derby DB sa vyskytuje iba v JDK a nie JRE. Ak chcete pracovať s tou najnovšou, tak si ju vždy stiahnite s webu. Mimochodom, na jednom stroji možno mať veľa Derby databáz, ale len jedna môže mať nastavenú cestu DERBY_HOME a PATH.

Ak sa rozhodneme stiahnuť si ju z webu a vyberieme požadovanú verziu. Dole na stránke možno vidieť aj zoznam chýb a príklady, opravy z daných chýb (bug fixes). Tu sa dajú stiahnuť vcelku prehľadné manuály, ktoré budete v niektorých prípadoch potrebovať. Samozrejme som počas písania tohto kurzu prevzal dosť informácií z týchto manuálov. Adresár, kam si ju nahráte (rozbalíte), je úplne ľubovoľný, avšak potom upravte cesty u DERBY_HOME a PATH. Derby je relačná databázou iba pre jazyk Java. Derby DBMS (database management system) je prístupná cez JDBC konektor.

Pozn .: od verzie Java 9 nebude Apache Derby súčasťou JDK.

Technické parametre Derby Databáza

Derby Databáza umožňuje funkčnosť v dvoch režimoch:

  • Plnohodnotný Databázový server: Jedná sa o serverovou verziu bežiaci na vlastnom JVM. Na pripojenie je potrebný nástroj ij alebo klient JDBC bežiaci na vlastných JVM. Pripájanie možno tak z localhost, ako aj zo siete. Ako vlastné databázové servery beží aj rad konkurentov, napr. MySQL, MS-SQL, PostgreSQL, apod ..
  • Vstavanou databázu (Embedded): Jedná sa prakticky vloženie databázového enginu do nášho projektu (programu). S danou databázou pracujeme cez vytvorenú inštanciu. Čo znamená, že rôznym Java programom môžete vložiť vlastnú databázu a nemusíte kľúčové dáta ukladať do externých dátových či konfiguračných súborov.

Takže čo to vlastne tá Derby databázy je? Jedná sa len o program databázového servera, ktorý sa spustí. Ak to prirovnám k Excelu, tak databázový server je niečo ako samotný Excel. Databázový program umožňuje mať v správe niekoľko databáz, rovnako tak Excel môže mať otvorených viac excelovských súborov. Z nich každá databáza disponuje tabuľkami, rovnako tak každý Excel súbor má lišty (záložky), čo sú taky tabuľky.

opis vlastnosti Parametre (limity)
Počet tabuliek v danej databáze je rovný maximu java.lang.Lon­g.MAX_VALUE teda (2 63) -1
Počet indexov v každej tabuľke 32767
Počet stĺpcov v každej tabuľke 1012
Počet stĺpcov s indexovými kľúčmi 16
Riadkov v každej tabuľke bez limitu
veľkosť tabuľky bez limitu - pozor, OS môže mať limit na veľkosť súboru
veľkosť riadku bez limitu - opätovne, limity OS na veľkosť súboru môžu mať vplyv na veľkosť tabuľky a riadku
Pokiaľ si vyrobíme databázu s tabuľkou alebo bez, daná databázy sa objaví v adresári ..\db\bin. Adresár sa bude volať rovnako ako daná databázy. Daný adresár bude obsahovať adresáre a súbory.
  • \db\bin\jmeno databaze\log - tento adresár obsahuje súbory, ktoré tvoria logy transakcií použité pre vnútorný dáta v prípade potreby obnovenia (neobsahuje logy v prípade vzniku error, tzv. nezapisuje chyby vzniknuté pri práci s databázou).
  • \db\bin\jmeno databaze\seg0 - tento adresár obsahuje jeden súbor pre každú tabuľku užívateľov, systémovú tabuľku a index.
  • \db\bin\jmeno databaze\services.properties - tento textový súbor obsahuje informácie s internými informáciami o nastaveniach (konfigurácii) danej databázy.
  • \db\bin\jmeno databaze\tmp - tento adresár nemusí vzniknúť, dočasný adresár ktorý slúži pre úschovu dočasných dát pri triedení, mazanie a updatu.
  • \db\bin\jmeno databaze\jar - tento adresár nemusí vzniknúť, adresár, v ktorom sú uložené * .jar súbory používané databáz v prípade ich použitia.

Pozn. Indexy nie sú podporované u dátových typov CLOB, BLOB, LONG VARCHAR, a XML.

Pozn. Derby databázový program spadne v prípade, že databázový logger sa nemôže rozšíriť na ukladanie nových logov.

Nástroje a utility Derby

Tieto nástroje sa nachádza v adresári ..\db\bin. Sú to nástroje príkazového riadka, teda bez GUI implementácie. Prácu s databázou môžeme riešiť programátorské cez Javu alebo cez interpret JDBC ako ij príkaz.

  • ij - kľúčový JDBC skriptovací nástroj. Tento interpret príkazov sa používa pre prácu s DB. Budeme často používať.
  • SysInfo - zobrazuje systémové informácie o JVM, Derby apod ..
  • dblook - je Derby Data Definition Language (DDL) nástroj. Umožňuje vytvárať dokumentáciu databázových schém.
  • signatureChecker - nástroj pre identifikáciu SQL funkcií a procedúr nespĺňajúcich SQL štandardy.

Vytvorenie novej systémové premenné DERBY_HOME a nastavenie PATH

Najskôr si vytvoríme novú systémovú premennú DERBY_HOME. Jej cesta je ..\JavaJDK\db. Zvolenej cesty pre DERBY_HOME a PATH sú iba ilustratívne pre môj prípad. Vo vašom prípade budú cesty samozrejme odlišné a závislé na tom, kde danú Derby máte nakopírovaniu.

nastavenie DERBY_HOME - DerbyDb

Aby sme sa nemuseli stále zdržovať s príkazmi v ..\db\bin, vykonáme nastavenie PATH v operačnom systéme. Jej cesta je ..\JavaJDK\db\bin. Po nastavení oboch premenných odporúčam reštartovať počítač.

nastaveni DERBY_PATH - DerbyDb

Nabudúce, Derby DB - Spustenie a vypnutie databázy , si predvedieme spustenie a vypnutie databázy.


 

Všetky články v sekcii
DerbyDb
Preskočiť článok
(neodporúčame)
Derby DB - Spustenie a vypnutie databázy
Č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