【问题标题】:Cannot connect to MySQL 4.1+ using old authentication with PHP无法使用旧的 PHP 身份验证连接到 MySQL 4.1+
【发布时间】:2011-09-25 17:26:50
【问题描述】:

是的,这是一个常见问题 - 我找到了一个非常适合此问题的 Stack Overflow 票:

Cannot connect to MySQL 4.1+ using old authentication

除了...我没有权限在我的共享主机提供商 (Site5) 上运行这些 MySQL 命令。当我问他们时,他们告诉我不要搞砸,因为我是从本地计算机访问它(我这样做只是为了在提交/部署我的代码之前测试 Web 应用程序)。我在 Windows 7 上使用最新版本的 XAMPP,它有 PHP 5.3.5。

无论如何,我没有 root 访问权限,也无法更改密码。他们不会为我运行这些命令。我能做什么?

编辑:此外,当我在共享主机上启用 PHP 5.3.5 时,尽管 MySQL 版本和 old_passwords 文件是旧的,但数据库连接仍然可以正常工作。我通过在 .htaccess 中添加一个处理程序并通过 phpinfo() 确认它来做到这一点。这是远程连接问题吗?

【问题讨论】:

  • 所以您正在尝试远程连接到您主机上的 MySQL?如果是这样,出于安全目的,许多人不会允许这样做。

标签: php mysql authentication


【解决方案1】:

您的主机可能不允许远程数据库连接 - 这是一种完全合理的安全措施,尤其是在共享主机的情况下。

如果您需要能够执行此类操作,那么您将不仅仅需要获得 VPS 或专用服务器。但是,可能有极少数允许它用于共享托管。

【讨论】:

  • 如果我使用 PHP 5.2,我的共享主机确实允许(现在仍然允许)。有什么想法吗?
【解决方案2】:

这就是我所做的:我通过在本地计算机上复制数据库并将连接字符串更改为“localhost”而不是专门指向共享服务器来让步。

【讨论】:

    猜你喜欢
    • 2010-12-07
    • 2016-01-21
    • 1970-01-01
    • 1970-01-01
    • 2012-01-18
    • 2018-01-25
    • 1970-01-01
    相关资源
    最近更新 更多