python(45): sqlserver linux环境库安装及报错处理

一.安装

freetd安装方式1 -- 未成功过

1. 安装freetds

#tar zxvf freetds-0.82.tar.gz

#cd freetds-0.82

#./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib --enable-dbmfix --with-gnu-ld --enable-shared --enable-static

#make && make install

#echo "/usr/local/freetds/lib" >> /etc/ld.so.conf.d/freetds.conf

#ldconfig -v

按照文档说的做,始终出错

error: command 'gcc' failed with exit status 1

freetd安装方式2 -- 可成功

检查python-devel包是否安装,如未安装,请安装

#yum install -y python-devel

#tar zxvf freetds-0.82.tar.gz

#cd freetds-0.82

#./configure   此处不加任何参数

#make

#make install

#ldconfig -v

其他安装

另外还需要注意检查以下这些包是否存在

libxml2 libxml2-dev libxslt* zlib gcc openssl

2. 安装setuptools

#tar zxvf setuptools-3.5.1.tar.gz

#cd setuptools-3.5.1

#python setup.py install

3. 安装pymssql

#tar zxvf pymssql-2.1.0.tar.gz

#cd pymssql-2.1.0

#python setup.py install

二.报错解决

2.1 20017错误

解决:连接参数配置 charset='utf-8'

tds_version = '7.1'

2.2 连接成功但是查询返回为空

原因:cursor.execute(sql)之后使用手动提交:connector.commit(),手动提交没生效 大坑

解决:连接后配置自动提交connector.autocommit(True)

2.3 连接报错 DB-Lib error message 20002

 1.可能是charset设置不对: utf8 或 CP936

2.可能是 服务器ip, 数据库名等填写不对导致

2.4 报错 找不到libsybdb.so.5 

按上面步骤执行idconfig ;若无此命令则 找出libsybdb.so.5 文件所在路径,路径添加进文件~/.bashrc

export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH

激活: source ~/.bashrc

参考文档:

python pymssql安装_linux安装pymssql过程_weixin_39638929的博客-CSDN博客

Python:利用pymssql模块操作SQL server数据库_python的sql模块_小兮说测试的博客-CSDN博客

Releases · ramiro/freetds · GitHub

FreeTDS — pymssql 2.1.4 documentation

pymssql连接Azure SQL Database - 墨天轮

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值