【问题标题】:Failed to connect to MySQL无法连接到 MySQL
【发布时间】:2014-04-09 12:30:59
【问题描述】:

我有两台计算机连接在局域网上,我想模拟客户端服务器类型的配置。所以假设我有 pc1 作为服务器,pc2 作为客户端。我在 pc1 上创建了一个数据库并保留了注册表单在 pc2 上。所以每当我执行注册脚本时,我都会收到以下错误。

连接 MySQL 失败:不允许主机 '192.168.2.6' 连接到这个 MySQL 服务器

这是我已将数据库主机替换为运行 xampp 的 pc1(server) 的 IP 地址的注册码。

<?php

define('DB_HOST', '192.168.2.7');//192.168.2.7 is the ip address of my server.
define('DB_NAME', 'hello');
define('DB_USER','root');
define('DB_PASSWORD','');

$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());

我是否必须对 xampp 中的 mysql 配置文件进行任何更改,或者是否必须更改数据库主机名。

【问题讨论】:

标签: php mysql


【解决方案1】:

如果服务器在您的本地计算机上,请尝试使用localhost 作为 ip 地址。

要授予对具有 ip 的计算机的访问权限:192.168.2.7
GRANT ALL ON *.* TO root@'192.168.2.7'

授予对所有计算机的访问权限,无论其 IP 是什么:
GRANT ALL ON *.* TO root@'%'

【讨论】:

  • windows 上的 xammp 我该怎么做
  • 你不能用 xammp 来做,因为 xammp 是一个安装 mysql 的网络服务器。它不是一个mysql接口。为方便起见,请尝试使用 mysqlWorkBench:dev.mysql.com/downloads/tools/workbench
【解决方案2】:

您需要使用以下查询通过通配符提供对所有主机的访问权限

GRANT ALL PRIVILEGES ON *.* TO 'username'@'%' IDENTIFIED BY 'password';

更多信息请参考Documentation

【讨论】:

  • windows 上的 xammp 我该怎么做
  • in phpmyadmin in SQl Tab 粘贴查询并运行
  • 我收到以下错误无法连接到 MySQL:用户 'root'@'192.168.2.6' 的访问被拒绝(使用密码:否)
  • 尝试通过 mysql 命令行登录并在此处键入命令。要打开它,请看这里:stackoverflow.com/questions/698914/…
  • 在本地主机上尝试这个查询而不是远程。那么你可以远程使用这个查询
猜你喜欢
  • 2011-03-14
  • 2021-02-05
  • 2017-04-09
  • 2019-05-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多