PostgreSQL
Sicherung einer PostgreSQL-Datenbank
pg_dump -d datenbankname -U db-user -h localhost > backupfile
Nun wird man nach dem DB-Passwort gefragt.
Möchte man das ganze automatisiert machen, muss man die Datei .pgpass im Home-Verzeichnis des Users anlegen, der den Dump ausführt. Die Berechtigungen müssen 0600 sein.
Das Format der .pgpass-Datei lautet:
hostname:port:database:username:password
Ihr könnt auch gerne Infos hinzufügen
hostname:port:database:username:password # Zugangsdaten für meine PSQL-DB
Wenn ihr nun den pg_dump ausführt, wird nicht mehr nach dem Passwort gefragt....
Ich hab nun ein Script geschrieben, und lasse dieses Script dann regelmäßig laufen.
#!/bin/bash
pg_dump -d linkwardendb -U linkwarden -h localhost > "/mnt/$(date +\%Y\%m\%d)_backup_linkwarden.sql"
Das Script nenne ich linkwarden-backup und mache ausführbar
chmod +x linkwarden-backup
Das Script muss dann nach /usr/local/bin kopiert werden und kann wie folgt im Cronjob installiert werden
00 02 * * * root /usr/local/bin/linkwarden-backup
Damit wird jeden Morgen um 2 Uhr eine Sicherung in /mnt abgelegt