azure - 无法从我的 Webapp 连接到我的 MYSQL Azure - 1045,“用户 'dbadmin'@'xx.xx.xx.x' 的访问被拒绝(使用密码:是)
问题描述
我在我的 Webapp 中不断收到以下错误
OperationalError: (_mysql_exceptions.OperationalError) (1045, "Access denied for user 'dbadmin'@'xx.xx.xx.x' (using password: YES)")
MySQL Azure:
- 托管在地区 > 法国中部
- 允许访问 Azure 服务
- 通过 Azure 门户使用用户名“dbadmin”和服务器“jetbase”创建
SQLAlchemy db_uri 看起来像这样
mysql://dbadmin@jetbase:'mysecretpassword'@jetbase.mysql.database.azure.com:3306/jetdb
网络应用程序:
也在法国中部举办
在我的开发计算机上本地运行时,相同的 docker 映像可以访问数据库(我在 Security 下的客户端 IP 地址中手动添加了 ip。)
有人可以帮我调试吗?
解决方案
根据提供的信息,我可以给出 2 个想法:
- Web 应用程序客户端中数据库 URL 的编码。我们的 PG 实例有类似的 DB url 语法(用户名中带有“@”)。在我们的服务器中,我们将其替换为“%40”以使其正常工作。
- 您的网络服务器 IP 不允许使用帐户 dbadmin(可能 IP 不是静态的,也可能不是您想到的,这实际上取决于您的 Web 应用程序的托管)。我想你已经仔细检查过了。
如果您愿意,我们可以在 StationF 一起尝试调试
推荐阅读
- php - 在 Laravel 中,有没有办法删除旧的撤销/过期护照令牌
- sql - Invoke-SQLcmd 在 Invoke-command 中不起作用
- typescript - 从只有 npm 的项目开始,使用 ES6 特性和目标 ES5 而不提供 polyfill?
- r - GLMM模型选择:是否需要对所有数据应用相同的模型?
- r - 如何改善 Rstudio 中数据查看器的延迟?
- mongodb - 如何从 Debezium 通过 SSH 连接到 MongoDB
- laravel - 背包换laravel nn关系和选择多个字段
- python - 来自 Python 的模块 pkcs#11
- string - Mongo - Open Food Facts dataset - 如何在字符串中查找包含某个子字符串的所有产品
- html - 我可以在本地托管 Google Analytics 或 Google Tag Manager 脚本吗?