FreeBSD下PHP连接Microsoft SQL Server的办法

王朝mssql·作者佚名  2006-11-23
宽屏版  字体: |||超大  

本人的系统配置:freebsd 4.9

apache 2.48

php 4.3.4

freetds 0.62.3

一、相关软件

freetds 来源:

官方网站

http://www.freetds.org/

freetds0.62.3.tar.gz

http://gd.tuwien.ac.at/visual/ibiblio/ALPHA/freetds/stable/

或者在gogole上搜索.

这个软件能够用Linux和Unix连接MS SQLServer和Sybase数据库。

二、安装配置步骤

第一步:编译安装freetds:

tar zxvf freetds-0.62.3.tar.gz(解压)

./configure –prefix=/usr/local/freetds --with-tdsver=8.0 --enable-msdblib

make

make install

第二步:重新编译PHP4

./configure [--with-apxs... --with-mysql...] ---enable-dbx(可选)

--with-mssql=/usr/local/freetds

make

make install

第三步:配置freetds

ee /usr/local/freetds/etc/freetds.conf

去掉相关的注释

# A typical Microsoft SQL Server 2000 configuration

[MyServer2k]

host = 192.168.101.2 (你的SQLServer机器名字或者IP地址)

port = 1433

tds version = 8.0

在这个配置文件中可以配置Windows域登陆或者SQLServer账号登陆两种方式

用phpinfo(),可以查看到如下信息:

mssql

MSSQL Support enabled

Active Persistent Links 0

Active Links 0

Library version 7.0

Directive Local Value Master Value

mssql.allow_persistent On On

mssql.batchsize 0 0

mssql.compatability_mode Off Off

mssql.connect_timeout 5 5

mssql.datetimeconvert On On

mssql.max_links Unlimited Unlimited

mssql.max_persistent Unlimited Unlimited

mssql.max_procs 25 25

mssql.min_error_severity 10 10

mssql.min_message_severity 10 10

mssql.secure_connection Off Off

mssql.textlimit Server default Server default

mssql.textsize Server default Server default

mssql.timeout 60 60

第五步:在php中建立数据库连接

<?php

上一篇 目录 下一篇 = dbx_connect (mssql, "服务器", "数据库名", "用户", "密码")

or die ("Could not connect");

print("Connected successfully");

dbx_close(上一篇 目录 下一篇);

?>

或者

<?php

上一篇 目录 下一篇=mssql_connect("sqlserver",$your_username,$your_password) or die (“can’t Connect to Database”);

echo 上一篇 目录 下一篇;

?>

在浏览器中运行上面脚本, 如果你得到一个link号那么恭喜,你已经配置好了,如果出现Call to undefined function: mssql_connect() 那说明仔细看上面的安装配置过程看你哪一步没有对。

注意:sqlserver名称是在/usr/local/freetds/etc/freetds.conf中定义的host参数,如果你写的IP地址,就是IP地址。

第六步:调试

如果出现不能连接,请在freetds配置文件中找到;dump file = /tmp/freetds.log这一行,注释掉前面的分号,再执行一下测试脚本,察看/tmp/freetds.log文件,它可以告诉你很多出错的信息帮助你排除问题

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有