广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php连接mssql失败怎么办
  • 218
分享到

php连接mssql失败怎么办

phpmssql 2021-06-01 22:06:27 218人浏览 才女
摘要

本文操作环境:windows7系统、PHP5版、DELL G3电脑php连接mssql失败怎么办?关于PHP无法连接MSSQL数据库的解决办法:php 数据库 SQL Server extension sqlserver 服务器今天接到一个

本文操作环境:windows7系统、PHP5版、DELL G3电脑

php连接mssql失败怎么办?

关于PHP无法连接MSSQL数据库的解决办法:

php 数据库 SQL Server extension sqlserver 服务器

今天接到一个问题要php5+iis6+Mysql5的平台环境上访问sqlserver2000的数据,结果运行时发现php连接远程mssql数据库出错,出错代码如下:

Warning: mssql_connect(): Unable to connect to server:

想想以前都是没问题的,怎么回事呢?后来去网上搜索,发现一篇文章,才发现原来服务器是需要安装mssql才能用php连接mssql的,本来新服务器上 我是不需要用到mssql的,但是现在没办法了,只能把扩展了,扩展了mssql之后就没问题了。

扩展方法:

1、在c:/windows/php.ini文件中找到 

;extension=php_mssql.dll 把前面的分号去掉

找到

;extension_dir = "./" 把扩展库目录改为php的库目录如:extension_dir = "c:/php/ext"

2、把php_mssql.dll文件复制到c:/windows/system32/目录下

3、重启iis。

下面是找到的一篇文章。

php配置:

在php.ini文件里设置如下,找到

;extension=php_mssql.dll 把前面的分号去掉

找到extension_dir = d:/extension/

你的php.ini里面可能不是d:/extension/

改成在php安装目录下面的extensions目录下面的php_mssql.dll,所在的路径,如果你没有把它移动到其他地方(假设你的php安装路径是d:/php)

就改成extension_dir=d:/php/extensions/

然后重新启动WEB服务器

这一点很容易做到,但是做完这样的设置后还是连不上,错误的信息如下:

MS SQL Server 数据库连接错误!请检查数据库主机变量设置是否正确!!!

而主机的变量设置我是一遍一遍的检查,那些设置是一点问题都没有的,翻遍网页,找到了下面的这点蛛丝马迹:

php.com资料:
I am trying to connect to SQL Server 2000 from PHP
I bumped to following warning:
Warning: mssql_connect(): Unable to connect to server: SERVER/Portal
....... on line 5
on line 5 there is:
$db_connect = mssql_connect('SERVER/Portal', 'sa', 'my_passwd');
I did the following
1.enabled php_mssql.dll extension in PHP.ini
2.every dll is in proper place(System32 or PHP folder),including ntwdblib.dll
I search lots of profile throught web ,but no one give me proper answer to resolve it.
after a few hour ,I found the problem was caused by
ntwdblib.dll ,which version is 7.00.839 ,when I replaced old ntwdblib.dll with the new
ntwdblib.dll ,which version is 8.00.194 ,all problem are solved.
We had some, read A LOT, of problems with MSSQL under Windows 2003.
We had 2 the same windows, php, php-ini, everything Machines but only one could connect.
Unable to connect was the error message.
Finnaly we checked the version of ntwdblib.dll and the one distributed with PHP was 7.00....
and the version of the one on the SQL Server install was 8.00.... so we copied this one in
the php and apache dir and it worked.

问题就这样被找到了,惹祸的是它 ntwdblib.dll

ntwdblib.dll的主要作用是提供sql server连接服务。

我用的php版本是5.25,在安装它的服器的 windows/system32/ 下我查到ntwdblib.dll文件的版本是2000.2.8.0 ,这个版本支持的是sql server 7.0, 因为安装PHP时会把dlls下面的所有文件覆盖到系统

目录下,所以当我用它去连接 sql server 2000 的时候当然会是无法连接了。

后来我在一台正常安装sql server 2000 的服务器上查到 ntwdblib.dll的版本是 2000.80.2039.0,我把这个文件拷过去,覆盖掉以前的版本,重启服务器后,一切正常。

补充:如果数据库名的开头是数字时也会提示无法打开,这时要做的很简单,把数据库的名字用中括号 [ ] 括起来就搞定了,如 123bbs 改写成 [123bbs]就没有问题了,另外如果你的数据库名字与sql server中的保留字冲突的话也会出现这种情况,用中括号的方法一样可以解决。

最终,PHP无法正确连接sql server 2000的问题终于解决了,虽然耗费大半天的时间,但收获还是很大的,现在把它贴出来,也让遇到同样问题的兄弟们少走一些弯路。

最后,如果您的目标MSSQL电脑装有防火墙,请开放1433端口,windows xp系统更是如此!

看了以上资料让装sqlserver2000的朋友传“ntwdblib.dll ”文件我,自己本地测试果然成功,但把上传到服务器上,结果info()没有mssql扩展了,本来已经加载的怎么就没有了,把php.ini文件和本地对比基本没有差别,就是扩展不了,本地一切正常。

最后发现还是“ntwdblib.dll ”的版本问题,找到个更高的“ntwdblib.dll ”版本替换。

--结束END--

本文标题: php连接mssql失败怎么办

本文链接: https://www.lsjlt.com/news/1001.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php连接mssql失败怎么办
    本文操作环境:windows7系统、PHP5版、DELL G3电脑php连接mssql失败怎么办?关于PHP无法连接MSSQL数据库的解决办法:php 数据库 sql server extension sqlserver 服务器今天接到一个...
    99+
    2021-06-01
    php mssql
  • 如何解决php连接mssql失败的问题
    这篇文章将为大家详细讲解有关如何解决php连接mssql失败的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php连接mssql失败的解决办法:1、在php.ini文件中找到extension=php...
    99+
    2023-06-22
  • 用php连接数据库失败怎么办
    本教程操作环境:Windows10系统、PHP8.1版、Dell G3电脑。用php连接数据库失败怎么办?PHP连接mysql遇到的坑(附解决方法,亲测有效)PHP连接mysql遇到的坑环境: win10 + PHP5.48 + Apa...
    99+
    2022-11-19
    php 数据库
  • android连接mysql失败怎么办
    android连接mysql失败的解决方法首先,在安卓工程的根目录中,查找到AndroidManifest.xml配置文件;AndroidManifest.xml配置文件查找到后,使用记事本打开;文件打开后,在文件中进行以下修改;#将and...
    99+
    2022-10-12
    android mysql
  • node 连接mysql失败怎么办
    本教程操作环境:Windows10系统、node18.4.0版、Dell G3电脑。node 连接mysql失败怎么办?nodejs连接mysql失败的解决方案:首先检查端口号,用户名,密码,数据库,主机有没有错误。如果没有,再看自己的my...
    99+
    2023-05-14
    mysql Node.js
  • php7连接mysql失败怎么办
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑php7连接mysql失败怎么办?原因:php5使用mysql_connect函数来进行Mysql数据库的连接操作,但是你会发现,这个方法用到php7上不灵了。原因很简单...
    99+
    2015-01-11
    php7
  • excel连接mysql失败怎么办
    excel连接mysql失败的解决方法当excel连接mysql失败时可以在excel中添加以下代码即可连接到MySQL。Public Sub nckxr()Dim cnn As ADODB.ConnectionDim cnnstr As ...
    99+
    2022-10-12
    excel mysql
  • mysql添加连接失败怎么办
    mysql添加连接失败的原因:mysql为开启远程访问权限,只允许本地访问,导致添加连接失败解决方法:首先,在命令行中启动MySQL服务;service mysql start  MySQL服务启动后,在命令行中输入mysql的用户名和密码...
    99+
    2022-10-21
    mysql 添加连接
  • Redis偶发连接失败怎么办
    这篇文章主要介绍了Redis偶发连接失败怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言本文主要给大家介绍了关于Redis偶发连接失...
    99+
    2022-10-18
    redis
  • ubuntu下mysql连接失败怎么办
    ubuntu中连接mysql失败的解决方法原因:Ubuntu在mysql的配置文件中默认绑定了本机ip,需要修改配置文件并赋予权限。在ubuntu命令行中,打开my.cnf配置文件;/etc/mysql/my.cnfmy.cnf配置文件打开...
    99+
    2022-10-22
    mysql ubuntu
  • mysql端口连接失败怎么办
    mysql端口连接失败的解决方法首先,通过ping命令ping主机ip,确保主机网络连接正常;在命令行中,执行以下命令对端口进行检测;#对3306端口进行检测netstat -ntpl |grep 3306端口检测好后,在命令行中开启防火墙...
    99+
    2022-10-16
    mysql 端口
  • navicat连接数据库失败怎么办
    这篇文章将为大家详细讲解有关navicat连接数据库失败怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Navicat连接数据库失败,个人总结原因分两类 :一 : N...
    99+
    2022-10-18
    navicat 数据库 ica
  • 升级mysql后连接失败怎么办
    mysql升级后出现连接失败的原因:mysql升级后使用了新的密码验证机制,导致连接mysql失败解决方法:首先,在命令行中使用CD命令切换到mysql安装目录中的bin目录下;CD \mysql\bin切换到并目录后,在命令行中使用roo...
    99+
    2022-10-16
    mysql
  • mysql连接服务器失败怎么办
    连接mysql服务器失败的解决方法首先,右键点击“开始”,选择进入“计算机管理”;在计算机管理页面中,点击“服务和应用程序”,在下拉中选择“服务”选项;进入服务页面后,在服务列表中查找到“MySQL”服务选项;查找到MySQL服务后,右键点...
    99+
    2022-10-23
    mysql MySQL服务器
  • 云服务器连接失败怎么办
    如果您的云服务器连接失败,请确保您正在使用的是稳定的互联网连接,并尝试在重新启动之前重新建立连接。如果连接依然无法使用,可能有以下一些原因导致连接失败: 网络连接问题:如果您在使用无线网络时遇到连接问题,请检查您的无线网络连接,看看是否...
    99+
    2023-10-27
    服务器
  • PHP中怎么连接MSSQL
    今天就跟大家聊聊有关PHP中怎么连接MSSQL,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  PHP连接MSSQL的实现方法。ms SQL是指微软...
    99+
    2022-10-18
    php mssql
  • php端口链接失败怎么办
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。php端口链接失败怎么办?解决php 访问数据库的 端口异常打开电脑后,同时按住电脑键盘的【开始键】和【R键】,打开电脑的程序运行弹窗。在电脑左下角弹出的程序运行弹窗...
    99+
    2022-11-10
    php
  • 连接到云服务器失败怎么办
    连接到云服务器失败怎么办,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。连接到云服务器失败怎么办?在云服务器日常使用过程中,难免不会出现连接失败的问题。可能是因为本地通信网络的问...
    99+
    2023-06-06
  • 云服务器连接失败怎么办啊
    检查网络连接 网络连接是云服务器连接失败的主要原因之一。因此,确保您的云服务器网络连接正常非常重要。可以使用诸如Netscapenavigator之类的工具来检测网络连接,并查看是否有错误或问题。 重启服务器 如果云服务器无法连接...
    99+
    2023-10-27
    服务器
  • 关闭mysql端口连接失败怎么办
    关闭mysql端口连接失败的解决方法当无法通过正常的方式关闭mysql端口时,可以通过修改配置文件实现关闭端口,步骤如下:如:关闭MySQL的3306端口首先,进入MySQL安装目录,在安装目录中查找到my.ini配置文件;查找到my.in...
    99+
    2022-10-04
    mysql 端口
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作