【问题标题】:Heroku. MariaDB. Access denied for user赫罗库。玛丽亚数据库。拒绝用户访问
【发布时间】:2020-06-30 20:35:18
【问题描述】:

我正在 Heroku 上创建新应用。已成功安装附加组件“JawsDB Maria” - 我可以打开 it's dashboard

在连接到数据库的 PHP 中,我收到 错误:

SQLSTATE[HY000] [1044] 用户 'vcgu1h273742rn5l'@'%' 对数据库 'jeyx2j66ipgtqe11' 的访问被拒绝

我确定问题不在 PHP 中,因为即使在 MariaDB 仪表板上尝试 Create New Databite - https://prnt.sc/rj4dr4 时我也会收到相同的错误。

看起来解决方案GRANT ALL PRIVILEGES 给用户。但是使用仪表板我什至无法执行SHOW GRANTS

问题:

  1. 有人可以帮忙解决这个问题吗?
  2. 或者,至少,我可以通过哪种方式GRANT ALL PRIVILEGES

我试过了:

  • 阅读 Heroku 文档:JawsDB MySQLPHP + DB
  • 在 Heroku 支持、Google、SO 中搜索类似问题:
    • 我找到的最佳匹配 is here。但是heroku pg:psql - 它是仅适用于 PostgreSQL 的工具。
  • 试图在Heroku CLI Commands 中找到对我的案例有用的命令

其他信息 - 我确定这并不重要,但以防万一

【问题讨论】:

    标签: mysql heroku yii2 credentials mysql-error-1044


    【解决方案1】:

    您可能知道如何阅读您的错误消息。无论如何,我的超能力正在解释显而易见的事情。所以,……就这样吧。

    SQLSTATE[HY000] [1044] 用户 'vcgu1h273742rn5l'@'%' 对数据库 'jeyx2j66ipgtqe11' 的访问被拒绝

    告诉你你的 php 程序无法访问 MySQL 服务器。该操作按这些步骤进行。

    1. 与服务器建立 TCP/IP 网络连接。成功。

    2. 向服务器提供用户名和密码。成功。

    3. 但服务器拒绝了这些凭据。失败

    4. 访问连接请求中提到的数据库架构。还没有尝试。所以我们没有关于命名数据​​库是否真的存在的信息。

    步骤 1 的成功意味着没有防火墙或网络路由问题。这很好。

    第 2 步的成功让我们对防火墙问题更有信心。

    步骤 3 的失败告诉我们我们没有使用 MySQL 服务器知道的用户名和密码。

    第 4 步未完成。所以,即使我们解决了用户名和密码问题,在这个烂摊子过去之前,我们仍然可能会遇到另一个问题。

    Heroku 将这些用户名分配给他们的客户。因此,请检查相应的 Heroku 控制面板,看看您是否使用了正确的用户名/密码凭据。您的错误消息表明您的凭据有误。

    下一步?向您的供应商寻求帮助。 Bruce Schneier 正在读这个吗?也许他可以在他乘坐地铁时通过耳塞为您解决这个问题。但是我们这里的其他人都无法解决它。

    【讨论】:

    • 你写了这么有趣的消息真是太好了 =) 但是,不幸的是,你错过了我的解释,为什么 问题不在 PHP 中。请看more detailed explanation。是的,在写给 SO 之前,我已经调试了 PHP 代码 - 没关系。 “向您的供应商寻求帮助。” - 我希望可以。但是如果您使用免费计划,Heroku 拒绝创建支持票。不过我真的很感谢你编辑的标签!
    【解决方案2】:

    我已经等了 8 个小时,希望有一些触发器可以完成所有必要的设置。但这没有帮助。

    然后我重新安装了这个插件。现在一切正常! 所以,这是某种“JawsDB Maria”错误。

    【讨论】:

      猜你喜欢
      • 2021-07-15
      • 1970-01-01
      • 2021-03-13
      • 2014-06-14
      • 2012-06-20
      • 2017-05-30
      • 2014-12-21
      • 2015-12-26
      • 1970-01-01
      相关资源
      最近更新 更多