MySQL 不再与 PHP 通信

MySQL 不再与 PHP 通信

我刚刚从 Windows XP 升级到 Windows 7(64 位)

我曾经使用 EasyPHP 5.3.1 开发我的网站,但是自从升级之后,我就无法让 PHP 与 MySQL 对话。

甚至 PHPMyAdmin 页面也无法加载。

我尝试安装最新的 64 位版本的 MySQL 来代替提供的 MySQL 版本,但这没有帮助。

这些查询似乎没有到达 MySQL。

我已经通过在命令行上运行 mysql 来验证我的数据库的 DB 是否正常工作。

PHPMyAdmin 没有显示错误,只是一个空白页。

我的网站出现的错误是:

警告:PDO::__construct() [pdo.--construct]: [2002] 连接尝试失败,因为连接方没有(尝试通过 tcp://localhost:3306 进行连接)在 E:\services\EasyPHP-5.3.1\www\IdeaWeb\classes\Security.inc 的第 14 行

致命错误:E:\services\EasyPHP-5.3.1\www\IdeaWeb\classes\Security.inc 第 0 行的最大执行时间已超过 60 秒

有人知道如何解决这个问题吗?(例如让 MySQL 与 PHP 对话。)

答案1

好的。我不知道这一点,但 127.0.0.1 和 localhost 在 Windows 7 上不是一回事。

我做了一些更深入的谷歌搜索,发现此主题基本上,它说为了使用 localhost,您需要在 hostfile 中将其设置为指向 127.0.0.1

答案2

您如何引用 SQL 服务?通过本地计算机名称“localhost”、指向计算机的 DNS 名称、与计算机上的物理接口关联的 IP 地址、127.0.0.1,...?

如果您通过任何看似远程外部的东西与 SQL 服务对话,那么最有可能的罪魁祸首就是 Windows 防火墙阻止了访问。这是一件好事(防火墙应该默认阻止某些东西,只有在明确指示的情况下才允许连接),您只需告诉它让您的 SQL 连接进入即可。我没有使用过 Windows 7,所以我无法确切地告诉您如何做到这一点(毫无疑问,版本之间发生了变化),但这应该不难。此外,如果您使用外部名称/地址作为连接的主机名,请尝试使用明确本地的名称(localhost、127.0.0.1)。

在您着手进行更改之前,作为证明防火墙是阻止连接的原因的临时措施,请将其完全关闭一分钟,然后重试。如果在防火墙关闭的情况下 PHP->SQL q 可以正常工作,则您的防火墙配置需要调整,如果仍然失败,则问题出在其他地方。

答案3

去那儿

“控制面板 >> 系统和安全 >> Windows 防火墙 >> 允许的程序或...”

好的,现在检查这些选项:

  1. BranchCache - 内容检索(用户 http)
  2. """"""""""" — 托管缓存客户端(用户 https)
  3. """""""""""-托管缓存服务器(用户 https )
  4. """"""""""" — 对等发现(用户 wsd)

享受吧:D

答案4

我遇到了这个问题。

如果你遇到问题,它应该是这样的:

<?php
$connect = mysql_connect('127.0.0.1','root','');
?>

要获取有关 MySQL 数据库的更多信息,请右键单击工具栏上的 ePHP 图标,然后单击“管理...”-> 然后应打开一个新页面并单击“管理 mysql”。希望这对您有所帮助。

相关内容