Jeg var bare nødt til at gøre præcis dette, så jeg tænkte, at jeg ville poste opskriften her. Dette forudsætter, at begge databaser er på samme server.
Først skal du kopiere tabellen fra den gamle db til den nye db. På kommandolinjen:
pg_dump -U postgres -t <old_table> <old_database> | psql -U postgres -d <new_database>
Giv derefter tilladelser til den kopierede tabel til brugeren af den nye database. Log på psql:
psql -U postgres -d <new_database>
ALTER TABLE <old_table> OWNER TO <new_user>;
\q
På dette tidspunkt har din kopierede tabel i din nye database stadig navnet <old_table>
fra din gamle database. Hvis du antager, at du vil flytte dataene et andet sted hen, så sig til <new_table>
, kan du bare bruge almindelige SQL-forespørgsler:
INSERT INTO <new_table> (field1, field2, field3)
SELECT field1, field2, field3 from <old_table>;
Færdig!