sql >> Databasteknik >  >> RDS >> PostgreSQL

Postgres:Bästa sättet att flytta data från ett offentligt schema för en DB till ett nytt schema för en annan DB

Det enklaste sättet att göra det är att byta namn på scheman. Du måste dock vara säker på att du är en enda användare av db1-databasen.

Göm först ditt schema offentligt i db1:

alter schema public rename to original_public;
create schema public;

Gör sedan säkerhetskopieringen och återställ:

$ pg_dump --format custom --file "my_backup" --schema "public" "db2"
$ pg_restore --dbname "db1" "my_backup"

Återskapa slutligen lämpliga schemanamn:

alter schema public rename to my_schema;
alter schema original_public rename to public;

Ett annat alternativ är att använda dblink. Det gör det möjligt att komma åt data från olika databaser.



  1. Hitta snabbt nära användare med PostGIS

  2. Fel när databas släpps (Kan inte skicka '.test\', felnr:17)

  3. hur man ändrar api_token kolumn i token guard

  4. Få ett returvärde i C# asp.net från en lagrad procedur (syntaxproblem)