安装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冒泡排序算法的实现代码
Nov 21 Python
pandas多级分组实现排序的方法
Apr 20 Python
python检测主机的连通性并记录到文件的实例
Jun 21 Python
python 3.6.2 安装配置方法图文教程
Sep 18 Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 Python
Python递归函数 二分查找算法实现解析
Aug 12 Python
Pytorch 多块GPU的使用详解
Dec 31 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
使用Nibabel库对nii格式图像的读写操作
Jul 01 Python
Python中常用的os操作汇总
Nov 05 Python
如何用用Python将地址标记在地图上
Feb 07 Python
python绘制简单直方图(质量分布图)的方法
Apr 21 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
星际流派综述
2020/03/04 星际争霸
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
2013/04/13 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
Js 回车换行处理的办法及replace方法应用
2013/01/24 Javascript
javascript使用正则表达式检测IP地址
2014/12/03 Javascript
jQuery使用prepend()方法在元素前添加内容用法实例
2015/03/26 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
vue.js做一个简单的编辑菜谱功能
2018/05/08 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
Vue动画事件详解及过渡动画实例
2019/02/09 Javascript
vue-cli3中vue.config.js配置教程详解
2019/05/29 Javascript
layui实现根据table数据判断按钮显示情况的方法
2019/09/26 Javascript
浅析vue-cli3配置webpack-bundle-analyzer插件【推荐】
2019/10/23 Javascript
vue样式穿透 ::v-deep的具体使用
2020/06/04 Javascript
在Python中处理XML的教程
2015/04/29 Python
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
两个使用Python脚本操作文件的小示例分享
2015/08/27 Python
详解Python开发中如何使用Hook技巧
2017/11/01 Python
说说如何遍历Python列表的方法示例
2019/02/11 Python
python实现对列表中的元素进行倒序打印
2019/11/23 Python
解决numpy矩阵相减出现的负值自动转正值的问题
2020/06/03 Python
如何基于Python代码实现高精度免费OCR工具
2020/06/18 Python
详解HTML5中的manifest缓存使用
2015/09/09 HTML / CSS
英国家电直销:Appliances Direct
2016/09/22 全球购物
加拿大廉价机票预订网站:CheapOair.ca
2018/03/04 全球购物
土木工程专业自荐信
2013/10/04 职场文书
护理自荐信
2013/10/22 职场文书
大学生专科毕业生自我评价
2013/11/17 职场文书
文明青少年标兵事迹材料
2014/01/28 职场文书
大学生活动策划方案
2014/02/10 职场文书
大学生在校学习的自我评价
2014/02/18 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
初中中等生评语
2014/12/29 职场文书
Golang实现可重入锁的示例代码
2022/05/25 Golang