[英]ImportError: No module named psycopg2
在OpenERP 6的安裝過程中,我想用這些命令生成一個配置文件:
cd /home/openerp/openerp-server/bin/
./openerp-server.py -s --stop-after-init -c /home/openerp/openerp-server.cfg
但它總是顯示消息: ImportError: No module named psycopg2
當我檢查 psycopg2 package 時,它已經安裝好了。 Package python-psycopg2-2.4.5-1.rhel5.x86_64
已安裝到其最新版本。 沒事做。 這有什么問題嗎? 我的服務器是CentOS,我安裝的是Python 2.6.7。
第一步:安裝依賴
sudo apt-get install build-dep python-psycopg2
第 2 步:在您的 virtualenv 中運行此命令
pip install psycopg2-binary
參考:費爾南多·穆尼奧斯
使用psycopg2-binary代替psycopg2 。
pip install psycopg2-binary
或者您將收到以下警告:
用戶警告:psycopg2 輪子包將從 2.8 版重命名; 為了繼續從二進制安裝,請改用“pip install psycopg2-binary”。 有關詳細信息,請參閱:http: //initd.org/psycopg/docs/install.html#binary-install-from-pypi 。
我遇到了同樣的問題並使用以下命令解決了它:
sudo apt-get install libpq-dev
pip install psycopg2
嘗試安裝
psycopg2-二進制
使用pip install psycopg2-binary --user
請嘗試在 python 控制台上運行命令import psycopg2
。 如果出現錯誤,請檢查 python 查找安裝模塊的sys.path
。 python-psycopg2-2.4.5-1.rhel5.x86_64
的父目錄是否在sys.path
中。 如果它不在sys.path
中,則在運行 openerp 服務器之前運行export PYTHONPATH=<parent directory of python-psycopg2-2.4.5-1.rhel5.x86_64>
。
試試這些:
virtualenv -p /usr/bin/python3 test_env
source test_env/bin/activate
pip install psycopg2
如果您堅持在您的系統上安裝它,請運行 python 並嘗試導入 python 嘗試:
pip3 install psycopg2
Mac OS 上的導入錯誤
如果psycopg2
正在安裝,但您無法在.py
文件中導入它,那么問題出在libpq
、它的鏈接以及libpq
所依賴的庫openssl
上。 整個步驟如下所示。 您可以逐步檢查它以了解哪個是您的錯誤來源,然后您可以從那里進行故障排除。
檢查openssl
的安裝並確保它正常工作。
檢查系統中是否安裝了libpq
,它可能尚未安裝或未鏈接。 如果未安裝,則使用命令brew install libpq
安裝它。 這將安裝 libpq 庫。 根據文檔
libpq 是 C 應用程序程序員到 PostgreSQL 的接口。 libpq 是一組庫函數,允許客戶端程序將查詢傳遞給 PostgreSQL 后端服務器並接收這些查詢的結果。
brew link libpq
,如果這不起作用,則使用命令: brew link libpq --force
。.zshrc
文件中export PATH="/usr/local/opt/libpq/bin:$PATH"
。 這將為libpq
library 創建所有必要的鏈接。source ~/.zshrc
。pip install psycopg2
。 它會起作用的。 即使您在 conda 環境中工作,這也有效。pip install psycopg2-binary
應該避免,因為根據 psycopg2 庫的開發人員不鼓勵在生產中使用 -binary 包,因為過去它們在多線程環境中被證明是不可靠的。 這可能已在較新的版本中得到修復,但我從未設法重現該故障。
sudo pip install psycopg2-binary
您需要安裝psycopg2
模塊。
在 CentOS 上:確保已安裝 Python 2.7+。 如果沒有,請按照以下說明操作:http: //toomuchdata.com/2014/02/16/how-to-install-python-on-centos/
# Python 2.7.6:
$ wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
$ tar xf Python-2.7.6.tar.xz
$ cd Python-2.7.6
$ ./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
$ make && make altinstall
$ yum install postgresql-libs
# First get the setup script for Setuptools:
$ wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
# Then install it for Python 2.7 and/or Python 3.3:
$ python2.7 ez_setup.py
$ easy_install-2.7 psycopg2
即使這是一個 CentOS 問題,以下是 Ubuntu 的說明:
$ sudo apt-get install python3-pip python-distribute python-dev
$ easy_install psycopg2
引用:http: //initd.org/psycopg/install/
最近在我的生產服務器上遇到了這個問題。 我已經安裝了 pyscopg2 使用
sudo pip install psycopg2
它在我的本地運行良好,但讓我在我的 ec2 服務器上運行。
sudo python -m pip install psycopg2
上面的命令在那里為我工作。 在這里張貼以防萬一將來對某人有所幫助。
我有同樣的問題,但僅此片段就解決了我的問題。
pip install psycopg2
對於 ubuntu 上的 python3,這對我有用:
$sudo apt-get update
$sudo apt-get install libpq-dev
$sudo pip3 install psycopg2-binary
我做了兩件事來解決這個問題:
對於 Python3
第 1 步:安裝依賴項
sudo apt-get install python3 python-dev python3-dev
第 2 步:安裝
pip install psycopg2
正確檢查您是否打開了您的peoject的虛擬環境,如果它關閉,則將其打開。 執行以下命令:
workon <your_env_name>
python manage.py runserver
它對我有用
當我從 Windows 10 切換到 Ubuntu 時遇到了同樣的問題。以下內容對我有用。在谷歌搜索並嘗試了 2 小時的眾多建議后,這...
sudo apt-get install libpq-dev
然后
pip3 install psycopg2
我希望這對遇到同樣問題的人有所幫助,尤其是在將 Windows 操作系統切換到 Linux(Ubuntu)時。
好吧,這里的答案都沒有提到這一點,我花了一些時間在某個隨機網站上偶然發現了它。 請用:
pip3 install psycopg2
這是當您使用 Python 3.5 時,您可以通過在終端中運行 python -v 來檢查您的版本。
使用以下解決方案解決了該問題:
基本上是由於 _bz2.cpython-36m-x86_64-linux-gnu.so Linux 包文件引起的問題。 嘗試找到位置。
檢查安裝 python 位置(哪個 python3)- 示例:/usr/local/bin/python3
復制INSTALL_LOCATION/lib/python3.6下的文件
cp -rvp /usr/lib64/python3.6/lib-dynload/_bz2.cpython-36m-x86_64-linux-gnu.so /usr/local/lib/python3.6
嘗試:
pip install psycopg2 --force-reinstall --no-cache-dir
Python2 importerror 沒有名為 psycopg2 的模塊
pip install psycopg2-binary
需求已經滿足...
通過以下步驟解決:
sudo curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
sudo python get-pip.py
sudo python -m pip install psycopg2-binary
pip install psycopg-binary
上面的行幫助了我
這很簡單,不知道為什么有人提到這個用於 mac。
brew install postgresql
pip3 install psycopg2
簡單來說,psycopg2 要我們先安裝 postgres。
PS:別忘了點贊,這樣也可以幫助到其他人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.