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

  • 相关阅读:
    使用Ansible连接AWS EC2
    centos7 常用工具包安装
    基于redis的分布式ID生成器
    使用Docker的macvlan为容器提供桥接网络及跨主机通讯
    小程序使用腾讯视频
    切换 Python2 Python3
    PHP字符串替换
    小程序常用操作,if,for,跳转,弹出提示
    小程序订单核销的思路
    PHP 批量删除的实现
  • 原文地址:https://www.cnblogs.com/hanyouchun/p/4364259.html
Copyright © 2011-2022 走看看