Ich versuche, eine ganze Tabelle von einer Datenbank in eine andere in Postgres zu kopieren. Irgendwelche Vorschläge?
Antworten
Zu viele Anzeigen?Wenn beide DBs (von & bis) passwortgeschützt sind, wird das Terminal in diesem Szenario nicht nach dem Passwort für beide DBs fragen, die Passwortabfrage erscheint nur einmal. Um dies zu beheben, übergeben Sie das Passwort zusammen mit den Befehlen.
PGPASSWORD=<password> pg_dump -h <hostIpAddress> -U <hostDbUserName> -t <hostTable> > <hostDatabase> | PGPASSWORD=<pwd> psql -h <toHostIpAddress> -d <toDatabase> -U <toDbUser>
Pour DBeaver-Werkzeug Benutzer, können Sie "Daten exportieren" zu einer Tabelle in einer anderen Datenbank.
Der einzige Fehler, mit dem ich konfrontiert wurde, war der folgende falscher Postgres-Treiber .
SQL Error [34000]: ERROR: portal "c_2" does not exist
ERROR: Invalid protocol sequence 'P' while in PortalSuspended state.
Hier ist ein offizielles Wiki über den Export von Daten : https://github.com/dbeaver/dbeaver/wiki/Data-transfer
Sie müssen DbLink verwenden, um die Daten einer Tabelle in eine andere Tabelle einer anderen Datenbank zu kopieren. Sie müssen die DbLink-Erweiterung installieren und konfigurieren, um datenbankübergreifende Abfragen durchzuführen.
Ich habe bereits einen ausführlichen Beitrag zu diesem Thema verfasst. Bitte besuchen Sie diesen Link
Sie können in Zwei einfache Schritte :
# dump the database in custom-format archive
pg_dump -Fc mydb > db.dump
# restore the database
pg_restore -d newdb db.dump
Im Falle von Entfernte Datenbanken :
# dump the database in custom-format archive
pg_dump -U mydb_user -h mydb_host -t table_name -Fc mydb > db.dump
# restore the database
pg_restore -U newdb_user -h newdb_host -d newdb db.dump