DISCLAIMER: Das ist und wird kein Tutorial oder richtiges Howto, es ist eher sowas wie eine Merkhilfe für den Autoren.
Benutztes System: Debian GNU/Linux. Benutzte Postgres-Version: 7.4.
Die Sachen, die im Folgenden aus komplett grossgeschriebenen Worten bestehen (CREATE USER und sowas) sind SQL-Befehle. Meist ist nur eine von vielen Varianten angegeben (CREATE USER hat z.B. viele hier ungenannte Parameter). Zur Referenz empfehle ich einfach irgendein SQL-Buch.
Installation
apt-get install postgresql
- ((Dinge, die ich vergessen habe. Werden eingefügt, wenn ich die Info wiederfinde bzw. nochmal installieren muss.))
Eine Datenbank einrichten
user postgres werden (als root su postgres)
template1 ist die default-Datenbank zur Administration aller anderen Datenbanken. Darum eingebena(als postgres): psql template1
dann im Prompt CREATE DATABASE irgendeinname ; eingeben, wobei irgendeinname durch irgendeinen Namen ersetzt werden kann. Semikolon beachten
um die jetzt bestehende Datenbank zu connecten, einfach \c irgendeinname eingeben.
defaultmaessig steht in der Zugriffs-Config-Datei /etc/postgresql/7.4/main/pg_hba.conf drin, dass lokale Zugriffe per ident-System authentifiziert werden. Folgende Änderungen der Datei ändern dies auf eine Passwort-Abfrage des Datenbank-Users, der nachher eingerichtet wird:
aus:
# All other connections by UNIX sockets local all all ident sameuser # # All IPv4 connections from localhost host all all 127.0.0.1 255.255.255.255 ident sameuser
wird:
# All other connections by UNIX sockets local all all password # # All IPv4 connections from localhost host all all 127.0.0.1 255.255.255.255 password
Einen User in der neuen Datenbank einrichten
- wieder mit psql in template1 einloggen
CREATE USER name PASSWORD 'passwort'; eingeben, wobei name und passwort ersetzt werden sollten
GRANT ALL ON irgendeinname TO nutzer; gibt alle Rechte zur Datenbank irgendeinname an nutzer.
Backup und Restore einer Datenbank
- auf den Rechner einloggen und postgres werden
Backup: pg_dumpall > db.out
Restore: psql -f db.out template1
db.out kann natürlich beliebig benannt werden.
Mit PGAdmin eine Datenbank verwalten
Datenbank zur Liste hinzufügen
erstmal apt-get install pgadmin3 und starten
- File - Add Server - ...
Address ist in diesem Beispiel 127.0.0.1, ansonsten muss entsprechend oben auch die Zugriffsteuerung angepasst werden
Initial DB ist hier irgendeinname.
Kann sein, dass mit template1 und User postgres auch die Erstellung neuer Datenbanken moeglich ist. Ungetestet.
- Username und Passwort auch wie oben.