sql >> Databáze >  >> RDS >> PostgreSQL

Přenos dat mezi databázemi pomocí PostgreSQL

Musel jsem udělat přesně tohle, tak jsem si řekl, že sem dám recept. To předpokládá, že obě databáze jsou na stejném serveru.

Nejprve zkopírujte tabulku ze staré databáze do nové databáze. Na příkazovém řádku:

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

Dále udělte oprávnění ke zkopírované tabulce uživateli nové databáze. Přihlaste se do psql:

psql -U postgres -d <new_database>

ALTER TABLE <old_table> OWNER TO <new_user>;

\q

V tomto okamžiku má vaše zkopírovaná tabulka ve vaší nové databázi stále název <old_table> z vaší staré databáze. Za předpokladu, že chcete data přesunout někam jinam, řekněte <new_table> , stačí použít běžné SQL dotazy:

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

Hotovo!



  1. Výpočet procent pomocí dotazu GROUP BY

  2. Vraťte číslo oddílu pro každý řádek při dotazu na tabulku oddílů na serveru SQL (T-SQL)

  3. Jak odstranit úvodní a koncové znaky v MySQL

  4. Oprava:„Neznámá tabulka ‚místní nastavení‘ v information_schema“ v MariaDB