Inštalácia PostgreSQL na platforme MS Windows
I keď je databázový server PostgreSQL napísaný pre Unix-like operačné systémy, existuje niekoľko možností ako ho používať aj na platforme MS Windows. Jednou z týchto možností je softvér Cygwin, ktorého postup inštalácie s databázou Postgres nájdete v tomto článku.
V prvom kroku je potrebné navštíviť stránku www.cygwin.com, odkiaľ si stiahneme súbor setup.exe
, ktorý nám poslúži na download potrebných súborov (packages). Po jeho spustení máme na výber inštalovať priamo z internetu, alebo si najskôr uložiť súbory na disk a inštalovať odtiaľto neskôr. Ja som zvolil druhú možnosť, ako mirror som zvolil ftp.tuke.sk. V dobe písania článku bola posledná release verzia Cygwin DLL 1.3.22-1.
Druhým krokom je navolenie súborov potrebných pre inštaláciu Postgres (Select Packages). Okrem defaultného nastavenia (všetky súbory zo zložky Base) vyberieme zo zložky Database súbor postgresql
.
Okrem súborov zo zložky Base sú defaultne vybrané aj ďalšie binárne súbory, ktoré sú potrebné k súborom z Base. Rozbaľovanie zložiek sa robí cez znak „+“ a kliknutím na príslušnú vlastnosť vyberáme, či chceme binárny súbor, verziu, atď.
Po úspešnom downloade (12 MB), prípadne inštalácii, sa po spustení objaví okno podobné prostrediu Unix. Budú nám fungovať nástroje, ktoré sme si zvolili pri inštalácii, napríklad príkaz ls
(výpis súborov).
Okrem uvedenej inštalácie potrebujeme Cygwin doplniť o ipc-daemon, z adresy http://www.neuro.gatech.edu/users/cwilson/cygutils/cygipc/index.html, v dobe písania článku verziou cygipc-1.14-1.tar.bz2 (2003-05-17).
Súbor je potrebné rozbaliť priamo v Cygwin, alebo Total Commander (Windows Commander) doplniť o plugin archívu bz2 zo stránky http://www.ghisler.com/plugins.htm a adresár usr nakopírovať priamo do Cygwin adresára. Plugin nám umožní prezeranie obsahu jednotlivých súborov (packages).
Spustenie PostgreSQL – postup spustenia (pre NT,2000,XP aj ako Services – potom je potrebný aj download cygrunsrv) nájdete po nainštalovaní Cygwin v súbore c:cygwinusrdocCygwinpostgresql-7.3.2.README (ak c:cygwin je cieľový adresár inštalácie). V nasledujúcich krokoch ukážem spôsob pripojenia k PostgreSQL, ak je PHP s Apache nainštalované taktiež pod Windows. Uvedený postup mám odskúšaný na Windows 9x,2000,XP.
Cygwin – spustenie PostgreSQL (plná veľkosť)
Screenshot zobrazuje tieto kroky:
- ipc-daemon &
- initdb -D /usr/share/postgresql/data
- postmaster -i -D /usr/share/postgresql/data & alebo pg_ctl start -D /usr/share/postgresql/data -o „-i“
Parametere:
- -i umožňuje klientom pripájať sa cez TCP/IP pripojenia, bez tejto možnosti sú akceptované iba ‚local unix domain sockets‘ pripojenia. Bez tohto parametra bude PHP vypisovať chybu:
Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Is the server running on host localhost and accepting TCP/IP connections on port 5432?
- & proces beží na pozadí
- pg_ctl stop -D /usr/share/postgresql/data
- najskôr zistíme PID procesu pre ipc-daemon cez príkaz „ps -f“
- cez „kill PID“ ukončíme ipc-daemon
- Ctrl+D, „exit“, alebo „logout“
Po výpise o úspešnom spustení démona postmaster
je potrebné pre návrat do príkazového riadku stlačiť Enter.
Spolu s PostgreSQL máme nainštalovaného aj riadkového klienta psql. Pomocou príkazu createdb
vytvoríme databázu pokusnadb. Parameter -l v psql slúži na výpis všetkých databáz.
Ďalej cez psql otvoríme databázu pokusnadb a vytvoríme v nej tabuľku Zam, do ktorej vložíme dva záznamy.
Pripojenie k PostgreSQL z PHP – ukážka skriptu s pripojením k databáze pokusnadb
s výpisom záznamov tabuľky Zam
:
<?php
$db = pg_connect („host=localhost dbname=pokusnadb“) or die(„Chyba pri pripojení k DB !“);
$qu = pg_query ($db, „SELECT * FROM Zam“);
echo pg_dbname($db).“:<hr />n“;
while ($data = pg_fetch_array ($qu))
echo $data[0].“, „.$data[1].“n“;
pg_close($db);
?>
Výsledok PHP skriptu v prehliadači:
Ukončenie PostgreSQL:
Ukončenie ipc démona:
Ukončenie Cygwin:
Cygwin – ukončenie PostgreSQL (plná veľkosť)
Pri opätovnom spúšťaní Postgresu vynechávame príkaz initdb
, spúšťame len ipc-daemon a postmaster (pg_ctl). Pre pohodlnú prácu s databázami si môžeme stiahnuť klienta phpPgAdmin z http://phppgadmin.sourceforge.net.
Ďalšie možnosti inštalovania PostgreSQL na platforme Windows nájdete na stránke Techdocs v2 – PostgreSQL on Windows, z uvedených som vyskúšal ešte UltraSQL by PeerDirect, ktorý je ‚nadstavbou‘ Cygwin, pri ktorom by malo odpadnúť namáhavé spúšťanie cez príkazový riadok. Ak chcete tento softvér vyskúšať, nezabudnite si predtým odinštalovať Cygwin, inak riskujete miešanie jednotlivých nastavení.
Ako tip na záver doporučujem odskúšať program VMWare Workstation, ktorý umožňuje mať na počítači spustených viac virtuálnych počítačov s rôznymi operačnými systémami. Čo znamená, že v okne pobeží napr. Linux s nainštalovaným PostgreSQL a cez PHP sa k nemu pripojíme ako k SQL serveru so svojou vlastnou IP adresou. VMWare je náročný na pamäť, jedná sa v podstate o ďalší počítač a z RAM si napr. pre Mandrake Linux zobere 160MB. VMWare Workstation nájdete na stránke http://www.vmware.com, kde je k dispozícii v Downloade 30-dňová skúšobná verzia.
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Jak zabezpečit váš chytrý telefon před kybernetickými hrozbami
30. listopadu 2023 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024