gpt4 book ai didi

mysql - 如何使用 wordpress docker 镜像从 azure 应用程序服务连接到 mysql 的 azure 数据库?

转载 作者:行者123 更新时间:2023-12-02 05:55:32 25 4
gpt4 key购买 nike

我有一个 azure 的应用程序服务,使用 latest wordpress image from docker hub 。 azure应用程序服务的屏幕截图: enter image description here

然后在azure应用程序服务->应用程序设置中,我添加了以下键/值对,这些键/值对将用于连接Azure数据库的mysql:

  1. WORDPRESS_DB_HOST
  2. WORDPRESS_DB_NAME
  3. WORDPRESS_DB_PASSSWORD
  4. WORDPRESS_DB_USER

截图: enter image description here

在我的 Azure mysql 数据库中,我已启用公共(public)访问/允许从任何 azure 服务进行公共(public)访问/还添加我的客户端 IP 和此 IP 范围 0.0.0.0 - 255.255.255.255。我可以从我的客户端访问它并创建将由 azure 应用程序服务使用的数据库。截图如下: enter image description here

在服务器参数中,我还关闭了 require_secure_transport 设置: enter image description here

最后,我尝试启动该网站,但它抛出错误“建立数据库连接时出错”,截图如下: enter image description here

我是 wordpress/docker 新手,不知道如何解决这个问题。我还查看了一些视频/文档,没有看到任何其他配置差异。您能指导我如何解决这个问题吗?非常感谢。

最佳答案

您收到此错误消息。

Warning: mysqli_real_connect(): (HY000/1045)>: Access denied for user 'ivan'@'52.xx.xxx.xx' (using password: YES)

这意味着 MySQL 已接收、处理并拒绝了您的 WordPress 实例的连接尝试。因此,您知道主机名是正确的,并且您的云提供商的防火墙设置允许您的 WordPress 实例与 MySQL 实例交换网络数据。

出了什么问题?

MySQL 的用户名/帐户名设置有一个怪癖。帐户名称可以类似于 'ivan'@'localhost''ivan'@'%'(甚至类似于 'ivan'@'192.0.0.0)。 22.33')。

其中第一个仅允许从本地主机登录(或通过 ssh 隧道)。第二个允许从 '%' 登录,即任何主机。您的 WordPress 实例需要第二个实例才能访问 MySQL。

当您从计算机登录 MySQL 时,请执行此操作。

SELECT host, user FROM mysql.user WHERE user='ivan';

您应该看到两行,如下所示

 host       user  
---- ---
% ivan
localhost ivan

可能缺少'%'作为主机的帐户。如果是这样,这意味着您需要 create another MySQL account and give it access to your database 。像这样做。

CREATE USER 'ivan'@'%' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;

接下来,确保您刚刚创建的用户帐户(您的 WordPress 软件将使用该帐户连接到 MySQL)可以访问您的数据库。

GRANT ALL PRIVILEGES ON wordpress.* TO 'ivan'@'%';
FLUSH PRIVILEGES;

如果您仍然收到错误消息,则可能是您的 'ivan'@'%' 帐户密码与您在 WordPress 配置中输入的密码不匹配。您可以通过以下方式更改它:

ALTER USER 'ivan'@'%' IDENTIFIED BY 'your_password'; 
FLUSH PRIVILEGES;

如果仍然给出相同的错误消息,则您的云供应商可能需要 TLS 才能连接到 MySQL。您可能需要咨询他们的支持团队。

(这是设置新 WordPress 实例的常见障碍。)

关于mysql - 如何使用 wordpress docker 镜像从 azure 应用程序服务连接到 mysql 的 azure 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72455967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com