====== PostgreSQL-Datenbank verwalten ======
Nach der Einrichtung eines PostgreSQL-Servers bietet es sich an, ein grafisches Tool zu verwenden, um komfortabel alle Datenbanken verwalten und manipulieren zu können.
===== Datenbankserver vorbereiten =====
Standardmäßig hat der Admin-User des PostgreSQL-Servers kein Kennwort, sodass dieser nicht zum SQL-Login verwendet werden kann. Dies kann wie folgt über eine Rootshell geändert werden.
Zunächst die Shell zum postgres-user switchen:
# su - postgres
Verbinden:
$ psql
psql (9.1.16)
Geben Sie »help« für Hilfe ein.
Nun das Kennwort setzen, man beachte das Backslash vor dem ''password''-Kommando:
postgres=# \password postgres
Neues Passwort eingeben:
Geben Sie es noch einmal ein:
Zum Schluss Verbindung trennen:
postgres=# \q
$ Abgemeldet
===== phppgadmin einrichten =====
Dieses Webtool lässt sich unter Debian einfach via
# apt-get install phpgpadmin
installieren. Mit folgender Apache-Konfiguration wird das Tool übers Web erreichbar:
ServerName config.myserver.net:9999
ServerAdmin nobody@example.com
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/my.crt
SSLCertificateKeyFile /etc/apache2/ssl/my.key
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
Alias /phppgadmin /usr/share/phppgadmin
Order allow,deny
allow from all
DirectoryIndex index.php
AllowOverride None
php_flag magic_quotes_gpc Off
php_flag track_vars On
php_value include_path .
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Nun mit dem Benutzernamen ''postgres'' und oben vergebenem Kennwort zur Verwaltung einloggen.
===== Backup =====
Ein SQL-Dump wird am einfachsten via Shell erzeugt. Als erstes ein Verzeichnis anlegen, was der postgres-User beschreiben darf:
# mkdir /private-backup/postgres
# chown postgres:postgres /private-backup/postgres
Dann wieder als postgres einloggen bzw. von root-Shell wechseln:
# su - postgres
Und Dump erzeugen:
$ pg_dump mypgdb > /private-backup/postgres/mypgdb.sql