安装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 相关文章推荐
在Django的通用视图中处理Context的方法
Jul 21 Python
详解Python实现按任意键继续/退出的功能
Aug 19 Python
Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】
Dec 26 Python
Python多线程原理与用法实例剖析
Jan 22 Python
Django中使用session保持用户登陆连接的例子
Aug 06 Python
python基础教程之while循环
Aug 14 Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 Python
python实现简单坦克大战
Mar 27 Python
如何打包Python Web项目实现免安装一键启动的方法
May 21 Python
Django实现微信小程序支付的示例代码
Sep 03 Python
详解python爬取弹幕与数据分析
Nov 14 Python
golang特有程序结构入门教程
Jun 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
Thinkphp实现自动验证和自动完成
2015/12/19 PHP
PHP const定义常量及global定义全局常量实例解析
2020/05/28 PHP
js传值 判断
2006/10/26 Javascript
网页自动跳转代码收集
2009/09/27 Javascript
JavaScript中yield实用简洁实现方式
2010/06/12 Javascript
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
6款新颖的jQuery和CSS3进度条插件推荐
2013/03/05 Javascript
用Javascript来生成ftp脚本的小例子
2013/07/03 Javascript
JavaScript中的关键字&quot;VAR&quot;使用详解 分享
2013/07/31 Javascript
CheckBoxList多选样式jquery、C#获取选择项
2013/09/06 Javascript
Js操作Select大全(取值、设置选中等等)
2013/10/29 Javascript
jQuery is()函数用法3例
2014/05/06 Javascript
jQuery $.each遍历对象、数组用法实例
2015/04/16 Javascript
浅谈document.write()输出样式
2015/05/07 Javascript
js淡入淡出的图片轮播效果代码分享
2015/08/24 Javascript
JS鼠标拖拽实例分析
2015/11/23 Javascript
基于JavaScript短信验证码如何实现
2016/01/24 Javascript
简单封装js的dom查询实例代码
2016/07/08 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
老生常谈js中0到底是 true 还是 false
2017/03/08 Javascript
vue axios请求拦截实例代码
2018/03/29 Javascript
Nuxt的路由配置和参数传递方式
2020/11/06 Javascript
简明 Python 基础学习教程
2007/02/08 Python
python使用循环实现批量创建文件夹示例
2014/03/25 Python
python实现Floyd算法
2018/01/03 Python
Python Process多进程实现过程
2019/10/22 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
Python3查找列表中重复元素的个数的3种方法详解
2020/02/13 Python
Python unittest框架操作实例解析
2020/04/13 Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
2020/05/13 Python
Python3基于print打印带颜色字符串
2020/07/06 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
2021/02/07 Python
浅析HTML5 meta viewport参数
2020/10/28 HTML / CSS
2014迎新年晚会策划方案
2014/02/23 职场文书
大学感恩节活动策划方案
2014/10/11 职场文书