zoukankan      html  css  js  c++  java
  • linux php 访问sql server设置

    1.安装freeTDS

    wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-stable.tgz

    1.1、进入到你下载的目录然后解压。tar -zxvf freetds-stable.tgz

    1.2、cd freetds-0.91 (我目前下载的版本是0.91)

    1.3、编译: ./configure  --prefix=/usr/local/freetds  --with-tdsver=7.1  --enable-msdblib

    主要参数说明:--with-tdsver设置FreeTDS的版本,我这里设置了7.1是为了能连接SQL2005

                        --enable-msdblib是是否允许Microsoft数据库函数库,这里为允许;

    1.4、make

    1.5、make install

    2、安装好之后,进行一下测试:

    2.1、cd /usr/local/freetds/bin

    2.2、./tsql -C

    2.3、如果安装成功,则显示:

    2.mssql扩展打开

    我安装的php中自带了mssql,在modules文件中有mssql.so

    只需要在php.ini中最后一行增加 extension=mssql.so;

    如果没有自带mssql,则可以独立安装:

    根据当前的php版本下载源码包,假设当前是php-5.3.17

    3.1、解压php-5.3.17.tar.gz的源包。

    3.2、进入 ext/mssql/下

    3.3、执行/usr/local/php/bin/phpize

    3.4、./configure --with-php-config=/usr/local/bin/php-config --with-mssql=/usr/local/freetds

    3.5、make

    3.6、make install

    3.7、生成module目录中提取mssql.so复制到/usr/local/php/lib/php/extensions/中

    3.8、.配置php.ini中extension_dir='/usr/local/php/lib/php/extensions/'

    3.9、添加一行extension=mssql.so;

    3.10、重启服务器

    报错解决:mssql在make时,报错

    cannot find freeTDS in known installation directories 及 spprintf.h:40: note: expected ‘char **’ but argument is of type ‘unsigned char

    在这里需要修改freetds源码,修改文件 freetds-0.91/include/sqlfront.h
    找到 typedef       BYTE *  LPBYTE;  将其注释掉
    /* typedef       BYTE *  LPBYTE; */

    删除掉/usr/local/freetds后,重新编译安装 freetds 后再次编译mssql

  • 相关阅读:
    用户场景故事
    我喜欢的输入法
    课堂练习-----查找水王
    《你的灯亮着吗》阅读笔记1
    补第二阶段冲刺站立会议6(原6月8日)
    补第二阶段冲刺站立会议5(原6月7日)
    补第二阶段冲刺站立会议4(原6月6日)
    补第二次冲刺站立会议3(原6月5日)
    补第二次冲刺站立会议2(原6月4日)
    补第二次阶段冲刺站立会议1(原6月3日)
  • 原文地址:https://www.cnblogs.com/hanyouchun/p/4364259.html
Copyright © 2011-2022 走看看