安装python依赖包psycopg2来调用postgresql的操作


Posted in Python onJanuary 01, 2021

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
python使用BeautifulSoup分析网页信息的方法
Apr 04 Python
详解appium+python 启动一个app步骤
Dec 20 Python
Python的CGIHTTPServer交互实现详解
Feb 08 Python
python主线程捕获子线程的方法
Jun 17 Python
OpenCV+python手势识别框架和实例讲解
Aug 03 Python
Python多线程原理与用法详解
Aug 20 Python
django2.0扩展用户字段示例
Feb 13 Python
python处理“
Jun 10 Python
Django项目主urls导入应用中views的红线问题解决
Aug 10 Python
python两个_多个字典合并相加的实例代码
Dec 26 Python
Python3中configparser模块读写ini文件并解析配置的用法详解
Feb 18 Python
在Windows下安装配置CPU版的PyTorch的方法
Apr 02 Python
python matlab库简单用法讲解
Dec 31 #Python
Pytorch1.5.1版本安装的方法步骤
Dec 31 #Python
python爬虫基础之urllib的使用
Dec 31 #Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
Dec 31 #Python
Python实现Appium端口检测与释放的实现
Dec 31 #Python
python 基于selectors库实现文件上传与下载
Dec 31 #Python
python中Mako库实例用法
Dec 31 #Python
You might like
帝国CMS留言板回复后发送EMAIL通知客户
2015/07/06 PHP
使用PHP uniqid函数生成唯一ID
2015/11/18 PHP
PHP实现超简单的SSL加密解密、验证及签名的方法示例
2017/08/28 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
2007/02/22 Javascript
深入理解JavaScript系列(12) 变量对象(Variable Object)
2012/01/16 Javascript
精心挑选的12款优秀的基于jQuery的手风琴效果插件和教程
2012/08/22 Javascript
xmlhttp缓存清除的2种解决方法
2013/12/13 Javascript
SWFObject基本用法实例分析
2015/07/20 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
2015/09/24 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
基于jQuery实现瀑布流页面
2017/04/11 jQuery
vue2.0s中eventBus实现兄弟组件通信的示例代码
2017/10/25 Javascript
Express本地测试HTTPS的示例代码
2018/06/06 Javascript
Node对CommonJS的模块规范
2019/11/06 Javascript
vue vantUI tab切换时 list组件不触发load事件的问题及解决方法
2020/02/14 Javascript
Vue 自适应高度表格的实现方法
2020/05/13 Javascript
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
Python中使用PyQt把网页转换成PDF操作代码实例
2015/04/23 Python
python下读取公私钥做加解密实例详解
2017/03/29 Python
Python+Socket实现基于UDP协议的局域网广播功能示例
2017/08/31 Python
Python字典及字典基本操作方法详解
2018/01/30 Python
python实现证件照换底功能
2019/08/20 Python
下载官网python并安装的步骤详解
2019/10/12 Python
8段用于数据清洗Python代码(小结)
2019/10/31 Python
python数据预处理 :数据抽样解析
2020/02/24 Python
python:HDF和CSV存储优劣对比分析
2020/06/08 Python
Python jieba结巴分词原理及用法解析
2020/11/05 Python
CSS中的字体大小设置属性总结
2016/05/24 HTML / CSS
给客户的道歉信
2014/01/13 职场文书
艾滋病宣传标语
2014/06/25 职场文书
财政专业大学生职业生涯规划书
2014/09/17 职场文书
创先争优承诺书
2015/01/20 职场文书
毕业设计致谢语
2015/05/14 职场文书
民间借贷借条如何写
2015/05/26 职场文书
css实现左上角飘带效果的完整代码
2022/03/18 HTML / CSS