安装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 Web框架Flask信号机制(signals)介绍
Jan 01 Python
wxPython中listbox用法实例详解
Jun 01 Python
Fabric 应用案例
Aug 28 Python
使用Python脚本和ADB命令实现卸载App
Feb 10 Python
Python 专题五 列表基础知识(二维list排序、获取下标和处理txt文本实例)
Mar 20 Python
[原创]python爬虫(入门教程、视频教程)
Jan 08 Python
Python RabbitMQ消息队列实现rpc
May 30 Python
基于Django静态资源部署404的解决方法
Jul 28 Python
Python实现发票自动校核微信机器人的方法
May 22 Python
Python xml、字典、json、类四种数据类型如何实现互相转换
May 27 Python
python开发的自动化运维工具ansible详解
Aug 07 Python
PYTHON使用Matplotlib去实现各种条形图的绘制
Mar 22 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求两个目录的相对路径示例(php获取相对路径)
2014/03/27 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
PHP+apc+ajax实现的ajax_upload上传进度条代码
2016/01/25 PHP
PHP实现二维数组去重功能示例
2017/01/12 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
PHP读取、解析eml文件及生成网页的方法示例
2017/09/04 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
JavaScript的递归之递归与循环示例介绍
2013/08/05 Javascript
jquery遍历select元素(实例讲解)
2013/12/31 Javascript
jQuery EasyUI datagrid实现本地分页的方法
2015/02/13 Javascript
jQuery实现仿Alipay支付宝首页全屏焦点图切换特效
2015/05/04 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
详解javascript实现自定义事件
2016/01/19 Javascript
JavaScript代码生成PDF文件的方法
2016/02/26 Javascript
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
2016/07/26 NodeJs
解决webpack打包速度慢的解决办法汇总
2017/07/06 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
解决JSON.stringify()自动将中文转译成unicode的问题
2018/01/05 Javascript
nodejs中各种加密算法的实现详解
2019/07/11 NodeJs
vue实现匀速轮播效果
2020/06/29 Javascript
Vue仿百度搜索功能
2020/12/28 Vue.js
详解python中的json的基本使用方法
2016/12/21 Python
python实现csv格式文件转为asc格式文件的方法
2018/03/23 Python
Python网络爬虫之爬取微博热搜
2019/04/18 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
python读取图像矩阵文件并转换为向量实例
2020/06/18 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
python爬取”顶点小说网“《纯阳剑尊》的示例代码
2020/10/16 Python
连带责任保证书
2014/04/29 职场文书
毕业论文答辩稿范文
2015/06/23 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
小学语文新课改心得体会
2016/01/22 职场文书
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫