Kompilcja i konfiguracja Postgresql na linuxie

W momencie pisania tego artykułu miałem na komputerze debiana potato. Tak ze poniższe uwagi będą działać do takich konfiguracji lub nowszych .... nieraz trzeba coś doinstalować albo zrobić update jakiejś biblioteki ale jak znam życie to macie jakieś nowe dystrybucje a tam jest wszystko nowe.

Kompilacja Źródeł

Po rozpakowaniu (plik z postgresem jest z sekcji Files-Bazy) w katalogu /usr/src musimy skonfigurować instalkę. Jeżeli używacie debiana lub innego systemu który pozwala na automatyczne updateowanie to radzę zainstalować w osobnym katalogu. Aby to uczynić w katalogu źródeł piszemy

        ./configure --prefix=/pgsql --enable-locale --enable-recode

Takie konfigurowanie zainstaluje całego postgresa w katalogu pgsql. Po prawidłowym uruchomieniu skryptu musimy skompilować Postgresa.

        make

To potrwa dość długo. Jeśli kompilacja się powiodła piszemy

        make install

To kopiuje wszystkie potrzebne pliki do /pgsql. Następnie jeżeli nie mieliśmy wcześniej postgresa musimy dodać konto dla niego.

        adduser postgres

I już jest fajnie :). Teraz wchodzimy do katalogu /pgsql. Musimy założyć katalog z bazami i danymi bazy oraz oddać je postgresowi.

        mkdir data
        chown postgres /pgsql/data
        chgrp postgres /pgsql/data

Administracja bazą odbywa się właśnie z konta postgres i żeby można było przygotować bazę do pracy musimy z konta roota przejść na konto postgresa.

        su postgres

Teraz w katalogu /pgsql/bin uruchamiamy inicjator bazy

        ./initdb -D /pgsql/data

Po tych czynnościach możemy uruchomić bazę. Może to wyglądać tak:

        ./postmaster -D /pgsql/data/

Następnie dodajemy sobie konto użytkownika bazy :

        ./createuser art79

I tworzymy bazę danych:

        ./createdb test

Po tych wszystkich czynnościach możemy wylogować się z konta postgresa i zalogować się do bazy danych

	exit
	/pgsql/bin/psql test

Warto też pamiętać :
Zakładanie nowego usera z prawami do zakładania baz danych :

	createuser -d -P -E art79

Zakładamy bazę danych w kodowaniu latin2 której właścicielem jest art79

	createdb --encoding=LATIN2 --owner=art79 nowabaza

Comments

Post new comment

Image CAPTCHA