首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PHP连接到远程MSSQL数据库

使用PHP连接到远程MSSQL数据库
EN

Stack Overflow用户
提问于 2015-04-17 17:41:52
回答 5查看 14.4K关注 0票数 3

我当地的环境是WAMP。对于几个页面,我必须访问远程托管的MSSQL,运行查询并获得返回结果。

向我提供了以下信息(蒙面值):

  • 远程MSSQL计算机的IP地址: 11.22.33.44
  • 数据库名称: abcdefgh
  • 用户名: db_username
  • 密码: db_password

我以前从未连接过远程托管的DB。来自示例at:http://php.net/manual/en/function.mssql-connect.php

我在一个测试文件MSSQLconnect.php中尝试了这一点:

代码语言:javascript
复制
<?php
// Server in the this format: <computer>\<instance name> or 
// <server>,<port> when using a non default port number
$server = '11.22.33.44\abcdefgh';

// Connect to MSSQL
$link = mssql_connect($server, 'db_username', 'db_password');

if (!$link) {
    die('Something went wrong while connecting to MSSQL');
}
?>

不知何故我联系不上。我尝试了连接字符串的所有变体:

代码语言:javascript
复制
$server = '11.22.33.44/abcdefgh';

$server = 'http://11.22.33.44\abcdefgh';

$server = 'https://11.22.33.44\abcdefgh';

$server = '11.22.33.44';

$server = '11.22.33.44:1431';

$server = '11.22.33.44,1431';

这些(以及这些变化)中的每一个都返回“连接到MSSQL时出了问题”。

我已经通过php.ini启用了mssql,并且可以看到phpinfo。是否有任何需要传递的附加字符串?

EN

回答 5

Stack Overflow用户

发布于 2015-04-17 17:44:43

首先,不要在这里提供对数据库的完全访问(除非您的用户和密码只是占位符)。其次,您必须确保运行SQL的主机已启用远程访问。如果您的MSSQL服务器没有启用远程访问,无论您如何尝试连接,您都会失败。

票数 0
EN

Stack Overflow用户

发布于 2015-04-17 17:58:55

代码语言:javascript
复制
       $server = '11.22.33.44';
      // Connect to MSSQL
      $link = mssql_connect($server, 'db_username', 'db_password');

上面的代码应该只起作用,只有mssql是不允许远程配置的,因此它阻止了对ip的访问。您必须启用mssql远程访问。

票数 0
EN

Stack Overflow用户

发布于 2015-04-20 09:47:29

我也有同样的问题,在玩了几次之后,我终于让它用sqlsrv_query()连接起来了。

不确定是因为PHP版本更新什么的。

对此做些研究,这对我有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29706035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档