2011-05-13 210 views
0

簡要說明
我有一些嘗試連接一個Django應用程序(目前設置爲sqlite3的)到新創建的PostgreSQL我的Ubuntu服務器上的問題。無法Django應用程序連接到外部PostgreSQL數據庫

問題
任何人都可以分享他們的成功嗎?有沒有一個很好的一步一步的教程做到這一點?或者至少有用的指針如何調試呢?

到此爲止(背景資料)
1)我有我的Ubuntu的服務器上安裝PostgreSQL的以下this教程。請注意,這產生了零錯誤。
2)我配置我的Django settings.py所見下面

DATABASES = { 
'default': { 
    'ENGINE': 'django.db.backends.postgresql', 
    'NAME': 'mytestdb',     
    'USER': 'mux_user',      
    'PASSWORD': 'mux',     
    'HOST': '192.168.1.111',      
    'PORT': '',     
    } 
} 

3)然Django的 '執行syncdb'。這產生了以下錯誤。

django.core.exceptions.ImproperlyConfigured:錯誤加載psycopg模塊:無模塊名爲psycopg

4)試圖與PIP安裝psycopg,easy_install的,並與setup.py。所有人都無法找到pg_config。

5)谷歌告訴我,我需要安裝libpq-dev和python-dev來編譯psycopg軟件包。這是我失去了大部分對自己所做的事情充滿信心的地方。我明白,這2個包是爲了讓我編譯python源碼,但是真的需要嗎?

系統信息
客戶:
OS:OS X雪豹10.6.6
Django的:最新版本1.2.5
的Python:2.7(運行的virtualenv)

很快成爲客戶端
操作系統:Windows XP/7
運行Python環境的上方捆綁可執行

服務器:
操作系統:Ubuntu的10.10(服務器,沒有GUI)
的PostgreSQL:8.4(這是易於得到安裝下載的)

更新
我在documentation中發現了它需要安裝psycopg的地方。我想這個問題從我真的需要這個,到在我的客戶端上安裝psycopg的最佳方式。

更新2011年5月13日:上午9:20
與同事溝通後,我相信this SO問題地址我的大部分問題

回答

0

我跑進周圍使用32位安裝Python進行了集中的問題(在Snow Leopard上要求的wxPython 2.8)。請在這個SO Question看到我的回答。

@mu太短:感謝您的幫助。

1

我不是Python的傢伙,但你需要將PostgreSQL作爲PostgreSQL的Python接口安裝的庫(psycopg)只是PostgreSQL C庫之上的一個Python層。因此,沒有PostgreSQL開發庫意味着沒有什麼可以在Python中打包,也沒有辦法從Python與PostgreSQL進行對話。

+0

這正是我開始安裝psycopg的原因。但是,我不知道在使用Django時這是否是必需的。根據我的錯誤判斷,我會說是,但是在Django文檔中找不到需要此模塊的任何地方。感謝你及時的答覆! – 2011-05-13 01:39:23

+0

@Adam:我不認爲Django本身需要psycopg或其任何支持庫,但您的應用程序需要與PostgreSQL對話,以便您的應用程序需要psycopg和朋友。 – 2011-05-13 04:47:29

+0

@mu:同意。看看我的更新。 – 2011-05-13 13:13:08

0

你需要把你的pg_config到您的路徑,首先找到自己的計算機上的文件,然後運行類似於:

export PATH=$PATH:/opt/local/lib/postgresql90/bin 
    pip install psycopg2 

如果您沒有安裝在客戶機上的Postgres,那麼你應該能夠與MacPorts的安裝:

sudo port install postgresql90 
+0

正如我在我的問題中指出的,我的機器上沒有pg_config。我不是可以查看這個的點,所以你知道我是否可以用自制軟件安裝我需要的東西? – 2011-05-13 11:05:30

相關問題