我是postgres的新手。我已經在終端pg_dump創建並導入pgsql數據庫
pg_dump -U USERNAME DBNAME > dbexport.pgsql
現在出口的大型,複雜的數據庫使用下面的命令,我轉這.pgsql文件到另一臺計算機,什麼是正確的命令來自動創建和恢復完全相同的數據庫如出口?任何建議,將不勝感激
我是postgres的新手。我已經在終端pg_dump創建並導入pgsql數據庫
pg_dump -U USERNAME DBNAME > dbexport.pgsql
現在出口的大型,複雜的數據庫使用下面的命令,我轉這.pgsql文件到另一臺計算機,什麼是正確的命令來自動創建和恢復完全相同的數據庫如出口?任何建議,將不勝感激
你轉儲數據庫的方式,有關數據庫本身的信息不包括在轉儲(這是一個普通的SQL文件)。
您可以使用-C
選項包括CREATE DATABASE
在轉儲(dump是與psql
恢復),或使用自定義格式:
pg_dump -F c -U postgres DBNAME -f dbexport.pgsql
可以與pg_restore
恢復這樣:
pg_restore -C -d postgres -U postgres dbexport.pgsql
爲什麼'pg_dump -U USER名稱DBNAME> dbexport.pgsql'產生一個400 MB文件,而'pg_dump -F c -U postgres DBNAME -f dbexport.pgsql'產生一個70 MB文件? –
由於自定義格式是壓縮的。它的優點之一。 –
'PSQL -f dbexport.pgsql' [如記錄在手冊中(https://www.postgresql.org/docs/current/static/backup-dump.html#BACKUP-DUMP-RESTORE ) –