Freetds 连接数据库问题

 今天一个项目,需要用到连接SQLSERVER数据库,获取数据,按照以往的做法 ,安装了LNMP,装完之后在安装Freetds,然后在独立添加PHP的MSSQL的模块,./configure  make &&make install    然后在PHP.ini 添加扩展MSSQL模块 一路安装顺利,安装好了以后,我在本地测试 tsql -H 192.168.1.33 -U sa -P 12345  可以登录Sqlserver ,还可以查询到数据

 

然后就很自然的,重启PHP  NGINX   然后告诉开发,环境OK了 ,可以开始测试了,结果过了不到5分钟 开发告诉我获取不了数据,我让开发发给我了一条链接,我登录测试一看,果然是获取不到数据,并且还报错,登录系统查看了日志 ,提示waring  mssql_driver line 113 不管怎样调试 通过PHP去获取数据就报错,通过MSSQL 驱动 本地连接就正常。折腾了一天半。后来问题终于找到了,原来是版本问题

我的环境 freetds版本是 0.95.0  PHP版本是 5.5.24    要连接的数据库是 SQL2005

在重新编译freeTDS 的时候 指定版本  ./configure --prefix=/usr/local/freetds/ --with-tdsver=7.1  --enable-msdblib

查了一些资料 说Freetds 编译安装的时候如果默认不指定版本 默认是5.0  这个是匹配SQSERVER 2000 数据库的    指定8.0版本的是 SQLSERVER 2008 的  其他的我没求证过,没那个版本的数据库,就为了这个小小的问题 坑了我一天半,特别记录一下,以后在踩类似的坑的时候 可以快速填坑

 

转载于:https://www.cnblogs.com/Waterclouds/p/4837656.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值