2. PostrgreSQL, Postgis a jejich instalace

PostgreSQL je relační databáze, kterou volíme hlavně kvůli její nadstavbě PostGIS. Tato nadstavba obsahuje podporu pro funkce a objekty definované specifikací OpenGIS. PostGIS doplňuje PostgreSQL o

Zdrojové soubory pro tuto práci jsou ve formátu shapefile, kde soubor s příponou .shp obsahuje geometrii, soubor s příponou .dbf obsahuje atributy (string, number, date), soubor s příponou .shx indexy pro rychlé vyhledávání a soubor s příponou .prj informace o zobrazení. Formát shapefile může obsahovat ještě dalších několik typů souborů. První tři uvedené, tedy .shp. shx a .dbf jsou nutnou součástí (v dokumentaci ESRI označeny jako „Required“), ostatní jsou volitelné. V PostgreSQL jsou data uložena naprosto odlišně. Jedná se o tabulku, kde sloupce mohou být jak atributy, tak geometrie. Při tom jeden shapefile představuje jednu tabulku v databázi.

2.1. Instalace PostrgreSQL

Prvním krokem v realizaci této semestrální práce byla instalace databáze na lokální disk počítače, se kterým budeme pracovat. Když obecně volíme nekomerční produkty, často se předpokládá, že používáme i nekomerční operační systém, zpravidla Linux. Vzhledem k tomu, že jsem ale zvyklý na operační systém Windows, instalace Linuxu a učení se s ním zacházet pro mě časově nepřipadala v úvahu. Naštěstí existují i binární distribuce nekomerčních softwarů pro Windows, například těch, které byly zvoleny pro tuto semestrální práci. Většina návodů je ale psána pro linux, kde uvedené příkazy fungují v konzoli linuxu a hledání návodu pro Windows často bývá obtížnější. Výborný návod, z kterého jsem pro instalaci databáze čerpal, je možné nalézt v angličtině v [1].

Oficiální stránky, odkud je možné získat binární instalaci PostgreSQL jsou http://www.postgresql.org. A pro PostGIS http://postgis.refractions.net

Na následujících obrázcích jsou vybrané části instalace PostgreSQL pro OS MS Windows. Účelem těchto obrázků je usnadnit poměrně komplikovanou instalaci, zvláště pro ty uživatele, kteří nemají s touto databází zkušenosti. V následujícím odstavci je za obrázkem uveden vždy slovní komentář. Instalace začíná výběrem jazyka instalace, kde tedy český jazyk není možností, dále se pak objeví informace k instalaci, s odkazem na často kladené dotazy v souladu s jazykem zvolené instalace, včetně doporučení tyto informace opravu přečíst a v případě komplikací přečíst znovu.

Obrázek 1. Instalace PostgreSQL, nastavení instalace. [1]

Instalace PostgreSQL, nastavení instalace. [1]

Ve verzi PostgreSQL 8.3 (beta 3), (která byla poslední vydanou, v době, kdy jsem databázi instaloval), není již PostGIS její součástí. Důvodem je zřejmě dostupnost aktuálnější verze PostGIS přímo na jeho webových stránkách, viz odkaz výše. Tento závěr vyvozuji z [1], kde právě z důvodu dostupnosti aktuálnější verze nebylo doporučeno instalovat postGIS ani z distribuce PostgreSQL 8.2, kde, jak je vidět na obrázku, tato možnost ještě byla volitelná. Z vlastní zkušenosti nedoporučuji, zvláště pro začínající uživatele instalovat verze s označením beta, ale raději oficielní vydání, zpravidla s označením final.

Obrázek 2. Instalace PostgreSQL, konfigurace služby. [1]

Instalace PostgreSQL, konfigurace služby. [1]

Na tomto obrázku zaškrtnutí položky „install as service“ znamená, že služba se spustí automaticky při startu Windows. „Service name“ je jméno služby, které můžeme ponechat (je předvyplněné). „Account name“ znamená jméno účtu, pod kterým se budeme přihlašovat k databázi, volíme „postgres“. (je možné vložit nový nebo i již existující, tedy pokud není administrátorský). Do „Account Domain“ zadejme jméno našeho počítače. (To zjistíme například v ovládacích panelech, klepnutím na „Systém“ a vybráním záložky „Jméno počítače“.) Dále zbývá vyplnit heslo a pro kontrolu ještě jednou. Pokud instalace rozhodne, že heslo je moc jednoduché, nahlásí nám to a vyzve nás ke změně, a pokud účet je nový, zeptá se na jeho vytvoření. Po překonání těchto hlášek můžeme postoupit dále. [1]

Obrázek 3. Instalace PostgreSQL, inicializace databáze. [1]

Instalace PostgreSQL, inicializace databáze. [1]

V další části instalace se nachází „Port Number“, neboli číslo portu, na kterém se bude databáze hlásit. U zaškrtávacího boxu „Addresses“ zaškrtneme „Accept connection on all addresses“ v případě, že se chceme k databázi připojovat i z jiného počítače. K tomu, aby bylo skutečně možné se k databázi připojit i odjinud, bude ale potřeba ještě dalších nastavení a editováni konfiguračního souboru. V „Locale“ pro naše účely vybereme „C“, jako lokální pro všechny databáze. „Encoding“ znamená kódování, které bude použito. Můžeme ponechat „SQL_ASCII“, ale zřejmě v tomto případě nastane problém s určitými českými znaky, pokud budou součástí importovaných dat do databáze. Následuje již položka „Superuser Name“, což je uživatelské jméno pro připojení do databáze. Pro zjednodušení můžeme použít opět postgres, ale z bezpečnostních důvodů se tak nedoporučuje. [1]

Pozn. Superuser Name/Password se používá k připojení k databázi a k provádění operací s databází a není nijak spojené s heslem předchozím.

Obrázek 4. Instalace PostgreSQL, instalace procedurálních jazyků. [1]

Instalace PostgreSQL, instalace procedurálních jazyků. [1]

PL/PgSQL je jazyk potřebný pro postGIS, a proto je důležité tuto volbu zaškrtnout.

Obrázek 5. Instalace PostgreSQL, instalace volitelných modulů. [1]

Instalace PostgreSQL, instalace volitelných modulů. [1]

Na tomto místě se ujistíme, že je zaškrtlý adminpack. Zbylé položky berte jako volitelné komponenty. Pro zkušené uživatele je v [1] doporučeno zaškrtnout ještě uvedené položky. A tímto je postgreSQL připraven pro instalaci, jejíž zbytek je dále již expresní.

2.2. Instalace PostGIS

Instalace PostGIS po úspěšné instalaci PostgreSQL již není takovým problémem. Instalace nabízí zaškrtnutí „Create spatial database“, ale tu je možné vytvořit i mimo instalaci, například v pgAdmnIII, který je součástí instalace postgreSQL a slouží ke správě databáze. (naleznete v adresáři „..\bin“ instalace PostgreSQL) Pokud tuto položku ponecháme zaškrtnutou, je nutné vyplnit v následujícím okně ještě uživatelské jméno a heslo, čili v našem případě postgres a zadat správné heslo. [1]

Obrázek 6. Instalace PostGIS. [1]

Instalace PostGIS. [1]