安装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调用浏览器并打开一个网址的例子
Jun 05 Python
python学习之编写查询ip程序
Feb 27 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
Jul 11 Python
python3基于TCP实现CS架构文件传输
Jul 28 Python
Python中的异常处理try/except/finally/raise用法分析
Feb 28 Python
使用Django简单编写一个XSS平台的方法步骤
Mar 25 Python
python 修改本地网络配置的方法
Aug 14 Python
python查看数据类型的方法
Oct 12 Python
python字符串,元组,列表,字典互转代码实例详解
Feb 14 Python
Window系统下Python如何安装OpenCV库
Mar 05 Python
python去除删除数据中\u0000\u0001等unicode字符串的代码
Mar 06 Python
python如何利用traceback获取详细的异常信息
Jun 05 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
短波问题解答
2021/02/28 无线电
JAVA/JSP学习系列之四
2006/10/09 PHP
PHP 图片水印类代码
2012/08/27 PHP
利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
2013/11/26 PHP
php生成不重复随机数、数组的4种方法分享
2015/03/30 PHP
部署PHP时的4个配置修改说明
2015/10/19 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
基于php解决json_encode中文UNICODE转码问题
2020/11/10 PHP
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
关于捕获用户何时点击window.onbeforeunload的取消事件
2011/03/06 Javascript
JavaScript 实现鼠标拖动元素实例代码
2014/02/24 Javascript
jquery常用特效方法使用示例
2014/04/25 Javascript
js中实现多态采用和继承类似的方法
2014/08/22 Javascript
jQuery中的each()详细介绍(推荐)
2016/05/25 Javascript
AngularJS与后端php的数据交互方法
2018/08/13 Javascript
Nodejs Express 通过log4js写日志到Logstash(ELK)
2018/08/30 NodeJs
Vue入门学习笔记【基本概念、对象、过滤器、指令等】
2019/04/13 Javascript
vue keep-alive的简单总结
2021/01/25 Vue.js
[39:11]DOTA2上海特级锦标赛C组资格赛#2 LGD VS Newbee第二局
2016/02/28 DOTA
python统计字母、空格、数字等字符个数的实例
2018/06/29 Python
python实现flappy bird游戏
2018/12/24 Python
Django 构建模板form表单的两种方法
2020/06/14 Python
基于Jquery和Css3代码制作可以缩放的搜索框
2015/11/19 HTML / CSS
香港太阳眼镜网上商店:SmartBuyGlasses香港
2016/07/22 全球购物
百丽国际旗下购物网站:优购
2017/02/28 全球购物
ghd官网:英国ghd直发器品牌
2018/05/04 全球购物
英国设计师珠宝网站:Joshua James Jewellery
2020/03/01 全球购物
交通专业个人自荐信格式
2013/09/23 职场文书
员工自我鉴定范文
2013/10/06 职场文书
采购员岗位职责
2013/11/15 职场文书
安全保证书范文
2014/04/29 职场文书
校园环保广播稿(3篇)
2014/09/15 职场文书
工程安全生产协议书
2014/11/21 职场文书
工资证明格式模板
2015/06/12 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL