我在我的WebApp中不断收到以下错误
OperationalError: (_mysql_exceptions.OperationalError) (1045, "Access denied for user 'dbadmin'@'xx.xx.xx.x' (using password: YES)")
mysql azure:
- 托管在地区>法国中央
- 允许访问Azure Services
- 通过用户名" dbadmin"和服务器" JetBase"创建的Azure Portal创建
sqlalchemy db_uri看起来像
mysql://dbadmin@jetbase:'mysecretpassword'@jetbase.mysql.database.azure.com:3306/jetdb
WebApp :
在法国中央也举办
在我的开发计算机上本地运行时,相同的docker映像可以访问数据库(我在安全性下手动添加了客户端IP地址中的IP。(
有人可以帮我调试吗?
这是Wierd的东西,我的密码具有惊奇标记!'事实证明,它没有正确解析,我一直在拒绝user@xx.xx.xx.xx(password = yes(
的错误访问权限'访问权限。我将其切换为"*",现在正常工作。
我还必须从db_uri
中删除密码周围的单个引号mysql://dbadmin@jetbase:mysecretpasswordwithoutquotes@jetbase.mysql.database.azure.com:3306/jetdb
ps:奇怪的是,运行时是相同的码头容器 用包含A!的密码在我的计算机上本地工作。 它也从MySQL工作台上工作,但仅在应用程序中失败 Azure中的服务(WebApp(。我猜Azure App Services编码DB_URI 并弄乱了"!"在密码
中
我可以给出2个想法,并提供提供的信息:
- Web应用程序客户端中数据库URL的编码。我们有相似的DB URL语法(用户名中的"@"(用于我们的PG实例。在我们的服务器,我们用"%40"代替了它。
- 帐户dbadmin是不允许您的Web服务器IP(也许IP不是静态的,也许这不是您想到的,它确实取决于托管您的WebApp(。我想你已经对此进行了仔细检查。
如果您想在Stationf