Der effizienteste Weg, psql Datenbanken zu bewegen
Frage
Was ist der effizienteste und sichere Art und Weise die Inhalte einer PostgresSQL Datenbank in eine komprimierte tar-Datei zu Rohr, dann auf einen anderen Rechner kopieren?
Dies würde für localhosting Entwicklung verwendet werden, oder zu einem Remote-Server sichern, mit * nichts-basierten Maschinen an beiden Enden.
Lösung
pg_dump ist in der Tat die richtige Lösung. Achten Sie darauf, die man-Seite zu lesen. In Espo dem Beispiel sind einige Optionen fraglich (-x und -D) und können Sie nicht anpassen.
Wie bei jeder anderen Datenbank-Manipulation, testen Sie viel!
Andere Tipps
Diese Seite hat eine Ergänzen Backup-Skript für einen Webserver, einschließlich der pg_dump Ausgabe.
Hier ist die Syntax verwendet es:
BACKUP="/backup/$NOW"
PFILE="$(hostname).$(date +'%T').pg.sql.gz"
PGSQLUSER="vivek"
PGDUMP="/usr/bin/pg_dump"
$PGDUMP -x -D -U${PGSQLUSER} | $GZIP -c > ${BACKUP}/${PFILE}
Nachdem Sie es gzipped haben, können Sie es auf den anderen Server übertragen mit scp , rsync oder nfs in Ihrem Netzwerk und Dienstleistungen abhängig.