首页 > 数据库技术 > 详细

【sqlalchemy】使用正确的DB_URI却报错密码错误-密码中包含特殊符号导致

时间:2019-11-04 11:49:09      阅读:278      评论:0      收藏:0      [点我收藏+]

【原因】

db_password密码中含有特定字符,比如含有@ %,则把密码部分进行URL编码

【解决办法】

from urllib.parse import quote_plus as urlquote

db_passw=f%%!kdku9fTn3r
#在连接前将包含特殊符号的密码转码再链接
url=mysql+mysqlconnector://<username>:%s@<ip>:<port>/<db_name>?charset=utf8%urlquote(db_passw)
engine = create_engine(url)

很奇怪的是,我之前一直用的这个密码,并没有报错。

 

现在却突然这样,真是奇怪,难道是开发环境所使用的依赖包有升级导致的吗?(所以有经验既是一件好事-做过的事做的更快了,有时候也会耽误事-盲目相信之前的判断-不能以全新的视角看待发现的问题。因为之前一直都能连接通,所以我一直没有考虑可能是真的密码出了问题,也不知道该往什么方向去排查问题,真是很是头疼了一会儿。)

 

总之,这个问题解决了还是很开心的

 

超感谢下面2位作者为了提供了解决问题的思路

参考文章:

关于使用sqlalchemy链接数据库时密码中有@等特殊字符时报密码错误的解决方法

sqlalchemy 链接数据库,指定编码,解决密码含有特殊字符

 

【sqlalchemy】使用正确的DB_URI却报错密码错误-密码中包含特殊符号导致

原文:https://www.cnblogs.com/kaerxifa/p/11791133.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!