我運行下面的命令來我的生產服務器上創建的所有數據庫的轉儲:嘗試恢復生產的PostgreSQL數據庫爲開發框
prodserver:/# pg_dumpall -U postgres -h 1.1.1.1 > prod.sql
我的發展中,我還需要通過備份這樣做的:
devserver:/# pg_dumpall -U postgres -h 1.1.1.1 > dev.sql
然後我嘗試恢復生產數據庫上的發展,像這樣:
devserver:/# psql -f prod.sql -U postgres
它沒有錯誤地運行。它似乎在創建表/導入數據。我知道,因爲如果我第二次運行它,我會收到某些數據已經存在/關係已經存在的消息。
但是,當我登錄像這樣:
psql -U postgres -d databasename
數據看上去與老開發數據。我試圖用所謂恢復生產數據如下:
select count(*) from widgets;
我比較,與當我使用的開發數據庫和他們是一樣的返回計數。 看起來數據庫沒有正確恢復。
我必須:
- 一)刪除之前,我恢復生產開發databsae?
- b)重新啓動 postgresql?
我一直在使用http://www.postgresql.org/docs/9.1/static/app-pg-dumpall.html作爲指導...... 我指的是在頁面底部的例子。
任何關於我可能會做錯的建議將不勝感激。
謝謝。
編輯1
我還檢查以下內容:
我打開了prod.sql文件,發現插入語句,如:
INSERT INTO widgets_to_wiget_groups VALUES (363, 15);
然後我做了一個select語句在數據庫中看看我是否在表中有這個條目,但我不......可能它正在恢復它,但在另一個用戶的上下文中?