joe

Linux下php连接SQL Server 2000数据库

说明:

Linux服务器系统:CentOS 5.5

Web环境:LAMP或者LNMP

Windows服务器系统:Windows Server 2003

Windows服务器IP地址:192.168.21.134

数据库环境:SQL Server 2000数据库

数据库账号:sa

数据库密码:123456

实现目的:Linux服务器中的php程序能够连接到Windows服务器中的SQL Server 2000数据库

具体步骤:

一、在Linux服务器中安装freetds

1、安装编译工具及驱动程序

yum install make apr* autoconf automake gcc gcc-c++ wget

2、安装unixODBC驱动程序

yum -y install unixODBC unixODBC-devel

3、安装freetds

cd /usr/local/src

wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-stable.tgz  #下载

gunzip freetds-stable.tgz   #解压

tar -xvf freetds-stable.tar

cd freetds-0.91

./configure --prefix=/usr/local/freetds --with-tdsver=8.0 --with-unixodbc=/usr --enable-msdblib  #配置

make  #编译

make install  #安装

4、配置freetds

cp /usr/local/freetds/etc/freetds.conf /usr/local/freetds/etc/freetds.confbak  #备份原有文件

vi /usr/local/freetds/etc/freetds.conf  #在最后位置修改编辑以下内容

1.jpg

[192.168.21.134]
        host = 192.168.21.134  #SQL Server 2000服务器地址
        port = 1433  #SQL Server 2000数据库端口
        tds version = 8.0  #8.0代表数据库版本为SQL Server 2000
        client charset = UTF-8  #设置字符集

5、测试freetds

/usr/local/freetds/bin/tsql -S 192.168.21.134 -U sa  #测试,提示输入数据库密码,出现下面界面,配置成功

      2.jpg

cd /usr/local/freetds/bin

./tsql -S 192.168.21.134 -p 1433 -U sa -P 123456 -D master  #测试,出现下面界面,配置成功

      3.jpg

二、配置Linux php连接SQL Server 2000数据库

1、php是用yum命令在线安装

yum install php-mssql   #安装php-mssql扩展,如果提示没有此安装包,请先配置第三方yum源

wget http://www.atomicorp.com/installers/atomic  #下载

sh ./atomic   #安装

yum install php-mssql  #再次执行

2、php是用源码编译安装

cd /usr/local/src/php-5.3.15/ext/mssql  #进入php源码包的ext下mssql目录

/usr/local/php5/bin/phpize 

./configure --with-php-config=/usr/local/php5/bin/php-config --with-mssql=/usr/local/freetds   #配置

注意:--with-mssql=/usr/local/freetds  #是指freetds的安装路径

make #编译

make install #安装

vi /usr/local/php5/etc/php.ini   #编辑,在最后位置添加下面一行

extension = "mssql.so"

:wq! #保存退出

3、重启LAMP或者LNMP

service httpd restart  #重启apache

service php-fpm restart  #重启php-fpm

三、测试php连接SQL Server 2000数据库

进入php程序目录,新建一个测试文件

cd /usr/local/nginx/html  #请改为自己的网站目录

vi  sql.php  #添加以下内容

<?php

$mssql=mssql_connect("192.168.21.134","sa","123456");

if ($mssql) {

echo "Connent Mssql Succeed";

}

else {

echo "connent Mssql Error!";

}

?>

:wq! #保存退出

注意:这里的192.168.21.134必须要和/usr/local/freetds/etc/freetds.conf中的[192.168.21.134]完全一样

在浏览器中打开,出现下面的界面,连接成功

    4.jpg

可以在新建一个文件

vi index.php

<?php

phpinfo();

?>

在浏览器中打开,能找到mssql,说明配置成功,如下图所示

    5.jpg 

码字很辛苦,转载请注明来自朱一兵的博客《Linux下php连接SQL Server 2000数据库》

评论