Inštalácia SQL servera Firebird na Windows
Obsah tejto kapitoly nemá pre systém ABRA Gen pre ORACLE, resp. ABRA Gen pre MSSQL význam.
Ako bolo povedané v kap. Inštalácia systému ABRA Gen pre Firebird, systém ABRA Gen pre Firebird vyžaduje pre svoju prácu databázový SQL server Firebird. Preto pred spustením inštalácie samotného systému ABRA Gen sa najskôr skontroluje, či je databázový server požadovanej verzie nainštalovaný, a ak nie je nainštalovaný Firebird požadovanej verzie, je potrebné ho doinštalovať z nasledujúcich stránok: https://firebirdsql.org.
Okrem inštalácie databázového SQL servera Firebird je potrebné overiť, či máte nainštalovanú najnovšiu verziu Microsoft Visual C++ Redistributable. (min. verziu 2015-2019). Nainštalovanú verziu si môžete overiť cez možnosť Pridať/Odobrať programy v Ovládacích paneloch Windows. Ak na serveri túto verziu Microsoft Visual C++ nemáte, je potrebné ju doinštalovať. A to tu V opačnom prípade bude pri vytváraní databázy dochádzať k chybám.
Program kontroluje vždy najvyššiu nutnú verziu Microsoft Visual C++ Redistributable, takže ak je k dispozícii vyššia, stiahneme vyššiu.
Popisu inštalácie príslušného DB servera a systému ABRA Gen sa venuje nasledujúca inštalačná príručka:
- DB servera Firebird a systému ABRA Gen pre Firebird na OS Windows v režime jedného používateľa
- DB servera Firebird a systému ABRA Gen pre Firebird na OS Linux
Požadovaná verzia SQL servera sa môže meniť s verziou systému ABRA Gen. Podporované verzie databázových SQL serverov v jednotlivých verziách systému ABRA Gen viď Kompatibilita systému s verziami databázového servera.
Kontrolu existencie inštalácie databázového servera Firebird možno potlačiť pomocou parametra inštalačného programu -nodbinstall. Využijete napr. v prípade sieťovej inštalácie, keď databázový server leží na inom serveri než systém ABRA Gen (aby potom napr. pri update systém nevyžadoval inštaláciu databázového servera, môžete ho spustiť s týmto parametrom), či v prípade inštalácie na OS Linux, ak pri variante inštalácie zo stanice používateľ nechce zbytočne na danú stanicu databázový server inštalovať.
V nasledujúcom texte stručne spomenieme priebeh kontroly a prípadne inštalácie DB Firebird po spustení inštalačnej verzie ABRA Gen pre Firebird na OS Windows 64 bit.
Po spustení inštalačnej verzie ABRA Gen pre Firebird sa najprv skontroluje, či je nainštalovaný databázový SQL server Firebird požadovanej verzie (nevyhnutný pre chod ABRA Gen).
Ak je databázový server požadovanej verzie prítomný, inštalačný program pokračuje inštaláciou samotného systému ABRA Gen.
Ak je príslušný SQL server už nainštalovaný, musí na ňom existovať používateľ "SYSDBA" s heslom "masterkey". Toto je ale možné upraviť aj pomocou nástroja DBAdmin až po inštalácii ABRA Gen. Viď tiež parametre spojenia isc_dpb_user_name a isc_dpb_user_password.
Ak je nájdený Firebird inej verzie, systém to oznámi:
Príklad hlásenia, ak je nájdený Firebird inej než požadovanej verzie
Ak stlačíte Áno, zobrazí sa on-line nápoveda, kde si môžete prečítať viac. Ak stlačíte Nie, inštalačný program ABRA Gen sa ukončí. ABRA Gen nemôže pracovať bez príslušného SQL servera, nevhodný Firebird je nutné najskôr odinštalovať.
Ak nie je nájdený žiadny server Firebird (tj. žiadny Firebird ste nemali nainštalovaný alebo ste mali iný, ktorý ste odinštalovali, ako žiadal predchádzajúci krok), systém to oznámi a Firebird je potrebné stiahnuť z odkazu https://firebirdsql.org/en/firebird-3-0/#Win64 a nainštalovať.
Nasledujúci popis sa vzťahuje na Firebird verzie 3.0.
Začneme inštaláciu servera Firebird
Inštalačný program SQL servera Firebird, ktorý je súčasťou inštalačného programu ABRA Gen pre Firebird, je určený pre 64-bitový OS Windows. Ak nemáte 64-bitový OS Windows 64bit, systém to nahlási.
Potom si zodpovedajúcu inštalačnú verziu SQL servera musíte stiahnuť z webu (napr. viď www.ibphoenix.com).
Po niekoľkých úvodných krokoch (súhlas s licenčnou zmluvou a informácie o inštalovanom serveri) sa zobrazí krok na zadanie cesty, kam sa má FB nainštalovať. Stačí potvrdiť predvyplnenú:
Príklad dialógu pri inštalácii databázového servera
Nasleduje niekoľko ďalších krokov (voľby inštalovaných komponentov, voľba názvu, pod ktorým sa vytvorí priečinok v ponuke Štart).
Potom nasleduje krok, v ktorom volíme architektúru servera, spôsob spúšťania a ďalšie možnosti:
Príklad dialógu pri inštalácii databázového servera
K architektúre servera:
Nasleduje krok, v ktorom volíme architektúru servera (Classic server, SuperClassic server a SuperServer), spôsob spúšťania (ako Aplikáciu, ako Službu) a ďalšie možnosti:
Databázový server Firebird je postavený na viacerých architektúrach (Classic server a SuperServer, pričom od verzie 2.5 môže Classic server bežať v dvoch módoch, a to Classic server a SuperClassic server. Rozdiel medzi variantmi Classic server (MultiProcess), SuperClassic server (ThreadedShared) a SuperServer (ThreadedDedicated) je predovšetkým v spôsobe, akým server obsluhuje klientske spojenia. Vo variante Classic server sa pre každé nové klientske spojenie vytvára nový proces operačného systému, pri variantách SuperClassic server a SuperServer obsluhuje server klientske spojenia v rámci jediného procesu s použitím tzv. vlákien (threads). Podrobnejší popis jednotlivých architektúr/módov viď používateľské príručky Firebirdu.
Každá z architektúr má svoje výhody, ale môže mať aj isté nevýhody. Vo všeobecnosti možno povedať, že architektúra s jedným procesom, v rámci ktorého sú obsluhovaní klienti prostredníctvom viacerých vlákien so spoločnou cache, je rýchlejšia než viac procesov (každý s vlastnou cache), keď dochádza k istej réžii na riadenie procesov, prepínanie medzi procesmi atď., na druhej strane, ak dôjde ku kolízii procesu FB, potom v prípade viacerých procesov "spadne" len ten klient, ktorý bol obsluhovaný v rámci skolabovaného procesu a ostatní bežia ďalej, zatiaľ čo v prípade obsluhy všetkých klientov v rámci jedného procesu, ak skolabuje, "zhodí" všetkých klientov. Je ale potrebné vziať do úvahy aj iné hľadiská, ako napr. priepustnosť siete a pod.
Výrobca odporúča nasledujúce:
- pri FB 2.5 - Classic server
- pri FB 3.0 - SuperServer
Toto odporúčanie zodpovedá aj východiskovému nastaveniu, ktoré sa ponúka v rámci inštalácie danej verzie FB.
FB v.2.5 vo variante SuperServer vykazoval istú chybu, keď v prípade viacerých CPU nebol schopný efektívne tieto CPU využiť, dochádzalo k zbytočnej réžii pri odovzdávaní procesu medzi CPU až tak, že celkový výkon mohol byť aj nižší než v prípade jediného CPU (preto sa potom nastavovala "afinity" na používanie len jedného CPU). To bol aj jeden z dôvodov, prečo sa pri FB 2.5 odporúčal variant Classic server najmä, ak sa vyžadovala väčšia priepustnosť dát, teda pre viacpoužívateľské inštalácie. Ďalej vykazoval istú nestabilitu. Preto sa odporúčal variant Classic server aj pre jednopoužívateľské inštalácie. Od verzie FB 3.0 bola architektúra SuperServeru výrazne vylepšená, preto rozdiel medzi variantmi z hľadiska spoľahlivosti nie je taký markantný a možno teda využívať výhody vyššej rýchlosti architektúry SuperServer.
Firebird CS (Classic server) nainštalovaný na Windows z princípu svojej architektúry vyžaduje mať spojenie na databázu definované sieťovo, tzv. Remote spojenie. V starších verziách (pri verziách nižších než 17.03.01) bolo možné používať v prípade nesieťovej, teda singl inštalácie ABRA Gen tzv. Local spojenie. (rýchlejšie než Remote spojenie a pre prevádzku singl inštalácie stačí). Preto sa v starších verziách ABRA Gen počas inštalácie detegoval nainštalovaný Firebird CS (Classic server) pre Windows a ak bola nainštalovaná táto varianta servera, doplnil sa do parametrov spojenia automaticky "localhost" (a komunikácia cez TCP protokol), viď nastavenie parametra spojenia v DBAdmin. Detekcia sa vykonávala podľa existencie súboru fb_inet_server.exe v podadresári bin v inštalačnom adresári Firebird. Dôvod, prečo sa "localhost" nedopĺňal vždy, je o niečo väčšia rýchlosť singl inštalácie pri local spojení (singl inštalácia rovnako môže bežať s nastavením spojenia "localhost", iba beží o niečo pomalšie (cca 2-3%), čo je zanedbateľné).
Avšak od prechodu na unicode a FB v.3 bolo zistené, že v prípade neprítomnosti localhost sa FB pripája v tzv. embeded móde, čo za istých okolností môže spôsobiť nestabilitu systému. Teda bola implementovaná funkcionalita, ktorá spôsobuje, že sa spojenie na databázu vždy realizuje ako Remote spojenie, tj. akoby bolo localhost zadané, aj keby v parametroch spojenia nebolo fyzicky uvedené. Teda vyššie opísaná funkcionalita dopĺňania localhost v prípade Classic servera a singl inštalácie je bezpredmetná. Teraz je spojenie vždy Remote, bez ohľadu na typ inštalácie (singl/sieť) či na zvolenú architektúru servera.
K voľbe služba/aplikácia:
Tu je možné zvoliť, či spúšťať ako servis (službu) (je možné len v prípade Win NT a kompatibilných) alebo ako samostatnú aplikáciu. Odporúčame spúšťať ako službu (je možné len v prípade Win NT a kompatibilných) .
K ďalším nastaveniam:
Tu zvolíme, ako FB spúšťať (automaticky pri štarte počítača) a ďalej zaškrtneme voľbu Copy Firebird client library to <system> directory. To spôsobí, že sa do systému skopíruje knižnica fbclient.dll, ktorú prednostne načítava aplikačný server.
Potom sa inštalácia vykoná a hneď sa ponúkne možnosť databázový SQL server spustiť.
Pre beh systému ABRA Gen je nutný beh databázového SQL servera. Ak databázový server z nejakého dôvodu pri štarte ABRA Gen nebeží, systém nahlási chybu a je potrebné najskôr databázový server spustiť. Pri lokálnej (nesieťovej) inštalácii (akou je napr. demoverzia) si toto ABRA Gen pre Firebird môže zabezpečovať automaticky sám, ďalej viď Spustenie systému a databázového servera, a používateľ sa spúšťaním databázového servera zaoberať nemusí. Viac viď kap. Databázový server.
Ak je požadovaný SQL server nainštalovaný, inštalačný program pokračuje inštaláciou samotného systému ABRA Gen.



