2012-07-18 98 views
1

我想從我的postgresql數據庫備份所有內容。我有2個網站,我的活的一個和開發者之一。所有的代碼都是同步的,我只是想將所有的數據拷貝到開發站點去做一些測試,然後添加數據,然後將其複製回來。備份來自postgreSQL數據庫(Django站點)的所有數據

我試過通過postgres網站上的文檔,我現在有運氣。

命令我跑做傾倒/恢復:

pg_dump db_name > joshtestdump 
psql dbname < joshtestdump – 

當我運行的第一個命令轉儲數據庫,我收到以下錯誤信息:

pg_dump: [archiver (db)] connection to database "db_name" failed: FATAL: Ident authentication failed for user "josh" 

我想補充,數據庫的用戶名和密碼是空白的。這對任何事情都有影響嗎?

我是新來的postgreSQL和網上的每個教程幾乎都做同樣的事情。

請讓我知道你是否需要更多的細節!

這裏是我的DB細節:

DATABASE_ENGINE = 'postgresql_psycopg2'   # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 
DATABASE_NAME = 'db_name'    # Or path to database file if using sqlite3. 
DATABASE_USER = ''    # Not used with sqlite3. 
DATABASE_PASSWORD = ''   # Not used with sqlite3. 
DATABASE_HOST = ''    # Set to empty string for localhost. Not used with sqlite3. 
DATABASE_PORT = ''    # Set to empty string for default. Not used with sqlite3. 

感謝,

喬希

修訂

+0

我使用了一個python-psycopg2解決方案:生成使得副本爲db的sql – 2012-07-18 15:27:00

+0

這是怎麼做的? – 2012-07-19 14:15:22

回答

6
  1. 你爲什麼要使用gzip,而不是--format到獲得壓縮轉儲?
  2. 你爲什麼以root身份執行此操作?
  3. 爲什麼你不使用pg_restore來恢復你的數據庫?
  4. 你爲什麼在實際manuals

    pg_dump的-U some_user -Fc數據庫名稱> mydb.dump

    pg_restore的-U some_user -d數據庫名稱mydb.dump利於隨機網絡教程

+0

對不起,我可能沒有這裏所說的是原始命令我跑做傾倒/恢復: pg_dump的DB_NAME> joshtestdump PSQL DBNAME 2012-07-18 15:39:33

+0

我沒有登錄,因爲我的身份登錄SSH我的根用戶帳號。我是否需要以數據庫登錄? – 2012-07-18 15:50:12

+0

@JoshDavies您正在使用sudo,這意味着以root用戶身份運行命令(它代表超級用戶)。 – Cromulent 2012-07-18 18:00:19