【问题标题】:Unable to connect to MySQL database but able to connect to database server无法连接到 MySQL 数据库但能够连接到数据库服务器
【发布时间】:2016-07-31 08:30:23
【问题描述】:

我正在尝试构建一个用于将页面与数据库连接的动态网站,我使用的代码如下。与服务器的连接正常,但无法选择数据库。数据库名称、用户 id、密码、主机的 ip 都给出但不工作。请帮忙....

define('DB_NAME', ''); 
define('DB_USER', '');
define('DB_PASSWORD', '');
define('DB_HOST', '');

$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);

    if (!$link) {
     die('Could not connect: ' . mysql_error());
         }
else {
      echo 'connected to server..................';   }


$db_selected = mysql_select_db($DB_NAME, $link);

if ($db_selected) {

print "Database Found";

}
else {

print "Database NOT Found";

}

【问题讨论】:

  • 您遇到了什么错误?
  • 请使用 PDO 或 MySqli。 Mysql 现在已弃用。
  • 三次检查您的数据库名称是否有拼写错误和区分大小写。还要确保您确实有权在 RDBMS 中选择该特定数据库。

标签: php mysql


【解决方案1】:

Mysql 已被弃用,最终将被删除。考虑使用 PDO 或 MySqli。

这里是 PHP 文档页面的链接,用于使用 MySqli 连接到数据库。

http://php.net/manual/en/mysqli.quickstart.connections.php

如果您仔细按照说明操作,您“应该”能够连接。如果没有,也许您可​​以发布您收到的错误消息。

【讨论】:

  • 错误消息如下通过“TCP/IP 无法连接到 MySQL: (2002) 无法建立连接,因为目标机器主动拒绝了它。”
【解决方案2】:

尝试提供正确的凭据以连接到 mysql 服务器。 mysqli_connect("localhost","root","password","db_name");

【讨论】: