2014-12-07 50 views
0

我想恢復數據庫。但數據庫不恢復SQL轉儲。我正在運行以下命令。我的SQL轉儲有表和複製語句。psql不恢復數據庫轉儲

psql -X -h localhost -d <database> -f dump.sql

我也試過在psql interactively

編輯:刪除了;通過a_horse_with_no_name建議。

\connect mydatabase 
\i dump.sql 

它沒有錯誤地運行。但它不創建任何數據庫表。任何想法?謝謝

編輯2:日誌文件中沒有任何錯誤。

+0

這是非常奇怪的。你在PostgreSQL日誌中看到一些錯誤嗎?你的client_min_messages是什麼?您可以交互地嘗試使用psql,並使用\ i dump.sql進行導入。重新檢查dump.sql以獲取有效的內容。 – 2014-12-07 09:15:23

+0

在問題中添加@PavelStehule日誌。謝謝 – Kulbir 2014-12-07 10:04:11

+0

您是否使用psql從命令行或通過pgadmin GUI轉儲數據庫? 這可能看起來不合邏輯,但我也遇到類似的問題,即通過命令行使用psql無法導入由pgadmin創建的轉儲,反之亦然。我沒有時間去解決這個「謎團」,但我認爲這可能是編碼問題。你可以試試看。 – 2014-12-07 10:18:04

回答

0

嘗試通過在文件中。的下降和創建語句是可選的,只是要確定

dropdb <database> 
createdb <database> 
psql <database> < dump.sql