sql >> Databasteknik >  >> RDS >> PostgreSQL

Överför data mellan databaser med PostgreSQL

Jag var bara tvungen att göra exakt det här så jag tänkte lägga upp receptet här. Detta förutsätter att båda databaserna finns på samma server.

Kopiera först tabellen från den gamla db till den nya db. På kommandoraden:

pg_dump -U postgres -t <old_table> <old_database> | psql -U postgres -d <new_database>

Bevilja sedan behörigheter för den kopierade tabellen till användaren av den nya databasen. Logga in på psql:

psql -U postgres -d <new_database>

ALTER TABLE <old_table> OWNER TO <new_user>;

\q

Vid det här laget har din kopierade tabell i din nya databas fortfarande namnet <old_table> från din gamla databas. Om du antar att du vill flytta data någon annanstans, säg till <new_table> , du kan bara använda vanliga SQL-frågor:

INSERT INTO <new_table> (field1, field2, field3) 
SELECT field1, field2, field3 from <old_table>;

Klart!



  1. jQuery UI Sorterbart, skriv sedan ordning i en databas

  2. Hämta gränsvärdena för en partitionerad tabell i SQL Server (T-SQL)

  3. Full förståelse för PDO ATTR_PERSISTENT

  4. Oracle SQL-utvecklare och PostgreSQL