PostgreSQL - inštalácia a základy

V tomto článku popíšem postup inštalácie PostgreSQL pre rôzne platformy.

Microsoft Windows XP a novšie

  1. Stiahnite inštalačný program z oficiálnych stránok PostgreSQL (http://www.postgresql.org/download/windows/)
  2. Spustite inštalačný program a sledujte pokyny inštalátora. Pozor!!! Ak používate súborový systém FAT32 inštalátor nevytvori systémovú databázu a je potrebné jú následne vytvoriť ručne pomocou príkazu initdb.
  3. Príkaz initdb nikdy nespúšťajte ako administrátor
    • Chybne ak je užívateľ administráto
      C:\PostgreSQL\bin > initdb -D ../data
      The program " postgres " is needed by initdb but was not found in the same directory as "C:\PostgreSQL\bin /initdb".
      Check your installation .
    • Správne:
      C:\PostgreSQL\bin > runas /user:postgres "c:/postgresql/bin/initdb -D C:/PostgreSQL/data"
    • alebo
      C:\PostgreSQL\bin > runas /user:postgres "c:/postgresql/bin/initdb -D C:/PostgreSQL/data -E UTF -8"
  4. V prípade, že reinštalujete postgresql a zabudnete predchádzajúce heslo používateľa postgres je nutné tohto používateľa odstrániť.
    cmd.exe
    net user postgres /delete

Linux z repozitára

Inštalácia PostgreSQL je v prostredí často používaných Linuxových distribúcií rovnako jednoduchá ako v prostredí Microsoft Windows s tým rozdielom, že nemusíme stiahnuť inštalátor ale budeme inštalovať z repozitára. Uvediem 2 príklady pre distribúciu Fedora a Debian.

  1. Ako prvé je potrebné spustiť terminál
  2. V terminále si prepneme rolu na administrátora a nainštalujeme balíčky z repozitárov
    • Fedora
      [user@localhost ~] $ su
      [root@localhost user] # yum install postgresql
      [root@localhost user] # yum install postgresql-server
      [root@localhost user] # /etc/init.d/postgresql start
      [root@localhost user] # postgresql - setup initdb
    • Debian
      [user@localhost] ~ $ su
      [root@localhost user] # apt-get install postgresql postgresql-client
      [root@localhost user] # /etc/init.d/postgresql start
  3. Posledným krokom je povolenie prístupu ak je zapnutý SElinux avšak to len v tom prípade ak by sme chceli pristupovať k databáze pomocou napríklad PHP.
    [root@localhost user] # setsebool -P httpd_can_network_connect_db on

Zo zdrojového kódu

Inštalovanie databázy zo zdrojového kódu sa využiva vtedy ak nie je k dispozícii inštalátor pre nami používany OS.

  1. Ako prvé si stiahneme zdrojový kód taktiež ako pri stiahnutí inštalátora pre systém Windows z oficiálnych stránok PostgreSQL (http://www.postgresql.org/ftp/source/).
  2. Následne si ako v kroku 1. inštalácie z repozitára spustíme terminál a presunieme sa pomocou príkazu cd do priečinku kam sme stiahli archiv so zdrojovým kódom (v mojom prípade pôjde o priečinok s názvom work ).
  3. Rozbalíme archív:
    [user@localhost work] $ tar xvfz archiv.tar.gz
  4. Presunieme sa do priečinku so zdrojovým kódom (opäť príkazom cd) a inštalujeme pomocou nasledujúcich príkazov:
    [user@localhost postgres] $ ./ configure --with-perl
    [user@localhost postgres] $ make all
    [user@localhost postgres] $ su root
    [root@localhost postgres] # make install
    [root@localhost postgres] # cp contrib/start-scripts/linux /etc/init.d/pgsql
    [root@localhost postgres] # chmod + x/etc/init.d/pgsql
    [root@localhost postgres] # useradd postgres
    [root@localhost postgres] # mkdir/usr/local/pgsql/data
    [root@localhost postgres] # chown postgres/usr/local/pgsql/data

Uvedený príklad predpokladá dostupnosť viacerých vyvojárských nástrojov a prekladačov v systéme kde inštaláciu vykonávame (napr. make, gcc a pod.).