安装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网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
Apr 25 Python
Python logging模块学习笔记
May 24 Python
Python的高级Git库 Gittle
Sep 22 Python
零基础写python爬虫之抓取百度贴吧代码分享
Nov 06 Python
在Python的框架中为MySQL实现restful接口的教程
Apr 08 Python
剖析Python的Tornado框架中session支持的实现代码
Aug 21 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
Dec 14 Python
python的staticmethod与classmethod实现实例代码
Feb 11 Python
python定时按日期备份MySQL数据并压缩
Apr 19 Python
pytorch 可视化feature map的示例代码
Aug 20 Python
django模板获取list中指定索引的值方式
May 14 Python
Python中socket网络通信是干嘛的
May 27 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
php 图片上传类代码
2009/07/17 PHP
php错误级别的设置方法
2013/06/17 PHP
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
用Javascript实现锚点(Anchor)间平滑跳转
2009/09/08 Javascript
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
Javascript面向对象编程(二) 构造函数的继承
2011/08/28 Javascript
jquery中使用ajax获取远程页面信息
2011/11/13 Javascript
js模拟点击事件实现代码
2012/11/06 Javascript
Jquery动态更改一张位图的src与Attr的使用
2013/07/31 Javascript
JS控制日期显示的小例子
2013/11/23 Javascript
利用jQuary实现文字浮动提示效果示例代码
2013/12/26 Javascript
Jquery性能优化详解
2014/05/15 Javascript
js console.log打印对像与数组用法详解
2016/01/21 Javascript
javascript设计模式之module(模块)模式
2016/08/19 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
jQuery插件zTree实现更新根节点中第i个节点名称的方法示例
2017/03/08 Javascript
基于Bootstrap的标签页组件及bootstrap-tab使用说明
2017/07/25 Javascript
vue使用Font Awesome的方法步骤
2019/02/26 Javascript
详解如何在Vue项目中导出Excel
2019/04/19 Javascript
详解vue中使用vue-quill-editor富文本小结(图片上传)
2019/04/24 Javascript
JavaScript对象原型链原理解析
2020/01/22 Javascript
JS实现时间校验的代码
2020/05/25 Javascript
原生JS实现天气预报
2020/06/16 Javascript
Python在信息学竞赛中的运用及Python的基本用法(详解)
2017/08/15 Python
Python3爬虫之urllib携带cookie爬取网页的方法
2018/12/28 Python
使用pyqt5 tablewidget 单元格设置正则表达式
2019/12/13 Python
基于matplotlib中ion()和ioff()的使用详解
2020/06/16 Python
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
俄罗斯在线手表和珠宝商店:AllTime
2019/09/28 全球购物
"火柴棍式"程序员面试题
2014/03/16 面试题
一套带网友答案的.NET笔试题
2016/12/06 面试题
反四风个人对照检查材料
2014/09/26 职场文书
2014年度安全工作总结
2014/12/04 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
python 破解加密zip文件的密码
2021/04/22 Python
基于Python实现射击小游戏的制作
2022/04/06 Python