安裝python依賴包psycopg2來調用postgresql的操作
1、先安裝psycopg2的依賴組件
本案例的操作系統為linux red hat
在安裝python依賴包psycopg之前,你必須需要先安裝postgresql數據庫的相關組件:
postgresql-devel,postgresql,postgresql-libs這三個組件比較重要。另外,可選組件:postgresql-server
安裝上述組件之前,可以用命令來查看你的系統現在是否已經安裝瞭相關組件:
[root@dthost27 ~]# rpm -qa | grep PostgreSQL
如果都沒有安裝,則可執行命令如下:
[root@dthost27 ~]# yum install postgresql-devel
(安裝過程中會順帶安裝上postgresql和postgresql-libs組件)
2、安裝psycopg2依賴包
保證依賴組件存在後,就可以使用pip命令安裝瞭:
[root@dthost27 ~]# pip install psycopg2-binary
註:這裡安裝的是binary格式的psycopg2依賴包,其實安裝psycopg2也可以,但是有時候執行pip install psycopg2會報錯,而安裝psycopg2-binary(編譯後)則不會
啟動python測試
import psycopg2
補充:安裝psycopg2報錯_解決方案
報錯信息
(python3-virtualenv) [root@vl-bg-anaylsis02 extract_log]# pip3 install psycopg2 Collecting psycopg2 Using cached psycopg2-2.8.4.tar.gz (377 kB) ERROR: Command errored out with exit status 1: command: /disk2/extract_log/python3-virtualenv/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-2d9wyu3k/psycopg2/setup.py'"'"'; __file__='"'"'/tmp/pip-install-2d9wyu3k/psycopg2/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info cwd: /tmp/pip-install-2d9wyu3k/psycopg2/ Complete output (23 lines): running egg_info creating /tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info/psycopg2.egg-info writing /tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info/psycopg2.egg-info/PKG-INFO writing dependency_links to /tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info/psycopg2.egg-info/dependency_links.txt writing top-level names to /tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info/psycopg2.egg-info/top_level.txt writing manifest file '/tmp/pip-install-2d9wyu3k/psycopg2/pip-egg-info/psycopg2.egg-info/SOURCES.txt' Error: pg_config executable not found. pg_config is required to build psycopg2 from source. Please add the directory containing pg_config to the $PATH or specify the full executable path with the option: python setup.py build_ext --pg-config /path/to/pg_config build ... or with the pg_config option in 'setup.cfg'. If you prefer to avoid building psycopg2 from source, please install the PyPI 'psycopg2-binary' package instead. For further information please check the 'doc/src/install.rst' file (also at <http://initd.org/psycopg/docs/install.html>). ---------------------------------------- ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
解決方案 For ubuntu
sudo apt-get install libpq-dev python3-dev
解決方案 For Fedora/Centos
yum install -y postgresql10 yum install postgresql-libs python3-devel postgresql-devel yum install gcc
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。
推薦閱讀:
- PostgreSQL 啟動失敗的解決方案
- 本地計算機上的 postgresql 服務啟動後停止的問題解決
- python安裝mysql的依賴包mysql-python操作
- Pyhton模塊和包相關知識總結
- 使用docker安裝elk的詳細步驟