欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

:CentOS下的mssql_connect()连接问题,出现"Unable to connect to server"问题。

程序员文章站 2022-05-13 17:20:27
...
在CentOS系统下使用mssql_connect()时,一直出现“Unable to connect server”错误提示。

背景: centOS系统的web服务器需要连接 MSSQL 的数据库服务器。mssql数据库使用的是MSSSQL2000,(MSSQL2008也试过,问题同样)。

centOS系统使用 yum install方式安装了 Freetds和 php-mssql模块,使用 phpinfo()查看php-mssql已经安装成功。在centOS下使用 tsql测试连接mssql账号密码,都正确。但是php文件中使用mssql_connect()函数连接时,总出现“ Unable to connect server”的故障提示(通过 error_log查询)。

程序代码:
$link = mssql_connect('192.168.100.10:1433', 'sa', '****'); // 此处总出现错误,加不加端口号:1433,故障依旧 if (!$link)
{
die('Unable to connect! error: ' . mssql_get_last_message());
}
?>


求高人解决!


回复讨论(解决方案)

就一个不能连接,无更明了的错误信息?
输出mssql_get_last_message()看看是啥
看样子是安装正常了,权限?sql server我遇过sa没录成功的情况,最终设置才解决
你再测试一下,争取得出更详尽的错误信息

还有你把ip换为localhost或是127.0.0.1再试试

你没权限,当然连不上去

是原有的代码吗? 我怎么看着mysql_connect()都写错了????

项目需要连接早先的数据库服务器, 以前的数据库是MSSQLServer2000,现在要迁移到web环境。所以需要用到php的mssql模块。
web服务器架的是linux结构,数据库端是另外一台windows的MSSqlServer服务器,所以和用localhost或127.0.0.1肯定是不对路。 因为第一步数据库还没有连接上,所以mssql_get_last_message()还有信息反馈回来。
应该也不是权限问题,已经用tsql方式查询过了,一切查询都正常。
另,在另外一台电脑上,使用手工方式解压安装freetds、php,重新编译安装,可以正常连接mssql数据库。
我的判断是用 yum 方式安装freetds和php-mssql时,不清楚是否还欠缺哪一步。所以请教有没有这方面的高人。

数据库端是另外一台windows的MSSqlServer服务器!!!
你是跨域访问吗,晕
默认安装的MSSQL,是不允许远程链接的,需要到 服务器配置管理器中,开放远程链接后,才能正常链接。
另外,远程链接,还受防火墙的影响,任何一端(即客户端和服务器端)的防火墙,都可以禁止其正常链接。
建议先配置好网络环境,再检查MSSQL的配置,最后才是检查您的PHP程序。

都已经说过了: TSQL已经测试过到MSSQL的连接,查询正常!参数都没有问题,只是在使用无法使用mssql_connect()函数。 当然不是MSSQL的服务器配置问题,也不是防火墙和网络环境问题。

查询centOS下的/var/log/httpd/error_log 日志,出现“...Warning: mssql_connect(): Unable to connect to server: 192.168.100.10:1433 in ....."

我的判断是yum 安装freetds和php-mssql时,不知哪里出了问题。

求有centOS下使用yum配置经验的高人来解!

自己解决。
两种方法:
1、运行命令 setenforce 0
2、打开 /etc/selinux/config ,将SELINUX设置为disabled,然后重新启动。

我也遇到一模一?的??,找了很多地方才看到?,??gangang解??何???理即可?

同样想知道怎么解决,这是我提出一样的问题,但写的更详细。http://ask.csdn.net/questions/69462

楼主解决了没
Warning: mssql_connect(): Unable to connect to server: