ThinkPHP 连接MSSQL PHP连接MSSQL
2011-03-11 17:10
435 查看
1.确定SQL装的时候用的是混合认证模式,或SQL验证模式
2.确定SQL2000装好后已打上SP4补丁
3.把“localhost”换成你的计算机名或是“127.0.0.1”
4.在PHP.ini文件里改mssql.secure_connection = On
5.查看本地MSSQL端口是不是1433,并且本机端口是否开放状态,如果端口变了相应服务地址后加“,端口号”,注意是逗号,不是冒号。
PHP连MSSQL的问题(NTWDBLIB.DLL在作怪)
而同事就可以连,他比较了ntwdblib.dll这个文件,版本都是2000.2.8.0。唯一不同的是他的机子装了MSSQL,怀疑是这个原因。
搜索了下,发现确实是这个原因。也有不少人碰到装了MSSQL就可以连远程MSSQL,没装则不行。
试验了下,发现原因还是在于NTWDBLIB.DLL这个文件。我本机是php5自带的,版本为2000.2.8.0,他也是。
在MSSQL光盘中搜索这个文件,找到NTWDBLIB.DLL,版本是2000.80.194.0。
将这个文件,Copy到php安装目录和c:\windows\system32目录下,停掉IIS或Apache。
一个Case需要使用PHP5连接MS SQL Server 2005,找了些资料自己琢磨了下,搞定了,呵呵
步骤:
1. 首先按通常做法配置好PHP5连接MS SQL Server
2. 下载正确版本的 ntwdblib.dll (2000.80.194.0),地址: http://webzila.com/dll/1/ntwdblib.zip
3. 覆盖 apache2.2.6\bin\ntwdblib.dll
4. 覆盖 php5.2.5\ntwdblib.dll
5. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols
6. 允许命名管道 "named pipes" 和 "tcp/ip"
7. 右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses"
8. 在 TCP 动态端口 "TCP Dynamic Ports" 填入 1433
9. 重启 SQL Server、Apache和PHP
使用以下方式连接MS SQL Server 2005:
mssql_connect('localhost,1433', USERNAME, PASSWORD);
另请注意:
如果更改了默认的1433端口号,则IP地址后面加端口号,用,号隔开,不是:号,如
$linkId = mssql_connect('IP地址,端口号','用户名','密码');
其实直接把php5自带的那个ntwdblib.dll考到system32(可以尝试一下)
2.确定SQL2000装好后已打上SP4补丁
3.把“localhost”换成你的计算机名或是“127.0.0.1”
4.在PHP.ini文件里改mssql.secure_connection = On
5.查看本地MSSQL端口是不是1433,并且本机端口是否开放状态,如果端口变了相应服务地址后加“,端口号”,注意是逗号,不是冒号。
PHP连MSSQL的问题(NTWDBLIB.DLL在作怪)
而同事就可以连,他比较了ntwdblib.dll这个文件,版本都是2000.2.8.0。唯一不同的是他的机子装了MSSQL,怀疑是这个原因。
搜索了下,发现确实是这个原因。也有不少人碰到装了MSSQL就可以连远程MSSQL,没装则不行。
试验了下,发现原因还是在于NTWDBLIB.DLL这个文件。我本机是php5自带的,版本为2000.2.8.0,他也是。
在MSSQL光盘中搜索这个文件,找到NTWDBLIB.DLL,版本是2000.80.194.0。
将这个文件,Copy到php安装目录和c:\windows\system32目录下,停掉IIS或Apache。
一个Case需要使用PHP5连接MS SQL Server 2005,找了些资料自己琢磨了下,搞定了,呵呵
步骤:
1. 首先按通常做法配置好PHP5连接MS SQL Server
2. 下载正确版本的 ntwdblib.dll (2000.80.194.0),地址: http://webzila.com/dll/1/ntwdblib.zip
3. 覆盖 apache2.2.6\bin\ntwdblib.dll
4. 覆盖 php5.2.5\ntwdblib.dll
5. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols
6. 允许命名管道 "named pipes" 和 "tcp/ip"
7. 右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses"
8. 在 TCP 动态端口 "TCP Dynamic Ports" 填入 1433
9. 重启 SQL Server、Apache和PHP
使用以下方式连接MS SQL Server 2005:
mssql_connect('localhost,1433', USERNAME, PASSWORD);
另请注意:
如果更改了默认的1433端口号,则IP地址后面加端口号,用,号隔开,不是:号,如
$linkId = mssql_connect('IP地址,端口号','用户名','密码');
其实直接把php5自带的那个ntwdblib.dll考到system32(可以尝试一下)
相关文章推荐
- ThinkPHP 连接MSSQL PHP连接MSSQL
- ThinkPHP3.0使用pdo方式连接sqlserver 2000、mssql 2000的配置,直接上配置文件,php版本是php5.2,服务器环境是ComsenzEXP
- 【转发】PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
- LINUX下php连接mssql数据库中文字符乱码问题解决
- php的mssql_connect+端口连接不了的问题
- php 5.3+ 连接mssql
- 在Navicat premium上创建的SQL Server数据库,实现用PHP连接(即php连接微软MSSQL)
- php连接mssql数据库 初学php笔记
- PHP连接MSSQL
- linux连接mssql数据库,在Centos7下为PHP安装mssql扩展
- PHP连接mssql 2005 输出json并处理中文乱码方法
- Php中用sqlsrv_contect()连接MSSQL时出错误
- 关于PHP无法连接MSSQL数据库的解决办法
- Thinkphp使用PDO方式连接MSSQL2000、sqlserver数据库的方法,PHP版本是PHP5.2
- PHP连接MSSQL方法汇总
- PHP连接mssql
- PHP 连接 MSSQL用port时候的注意事项
- windows下 php5.3如何连接mssql
- PHP连接SqlServer2008,需要安装mssql,freetds模块(yum安装方式)
- php 连接 mssql sql2008