【原因】

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却报错密码错误-密码中包含特殊符号导致的更多相关文章

  1. 泰德激光打标软件 包含 #include "Main.h" 时 原本正确的单元却报错

    问题:泰德激光打标软件  ,当新增单元需要包含 #include "Main.h" 时, 原本正确的单元却报错. 办法:包含 #include "Main.h" ...

  2. 镜像切换Logreader Agent报错:分发数据库中可能存在不一致的状态(续)

    报错: 分发数据库中可能存在不一致的状态: dist_backup_lsn {00000030:000001ba:0004},dist_last_lsn {00000030:000001cd:0004 ...

  3. maven编译报错 -source 1.5 中不支持 lambda 表达式

    在用maven编译项目是由于项目中用了jdk 1.8, 编译是报错  -source 1.5 中不支持 lambda 表达式,Google找到这篇解决方案,记录一下: 编译时报如下错误: [ERROR ...

  4. laravel 项目表单中有csrf_token,但一直报错419错误 解决redis连接错误:MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persi

    laravel 项目表单中有csrf_token,但一直报错419错误,因为项目中使用到Redis缓存,在强制关闭Redis后出现的问题,查询laravel.log文件查找相关问题 安装redis后在 ...

  5. 【Maven】Maven-maven编译报错 -source 1.5 中不支持 lambda 表达式

    Maven-maven编译报错 -source 1.5 中不支持 lambda 表达式 maven lambda_百度搜索 maven编译报错 -source 1.5 中不支持 lambda 表达式 ...

  6. maven编译报错 -source 1.5 中不支持 lambda 表达式(转)

    原文链接:http://blog.csdn.net/kai161/article/details/50379418 在用maven编译项目是由于项目中用了jdk 1.8, 编译是报错  -source ...

  7. maven编译报错 -source 1.5 中不支持 lambda(或diamond) 表达式,编码 UTF-8 的不可映射字符

    在用maven编译项目是由于项目中用了jdk 1.8, 编译是报错  -source 1.5 中不支持 lambda 表达式. 错误原因: Maven Compiler 插件默认会加 -source ...

  8. 【maven】【IDEA】idea中使用maven编译项目,报错java: 错误: 找不到符号 【2】

    =================================================================================== idea中使用maven编译项目 ...

  9. scala的trait执行报错: 错误: 找不到或无法加载主类 cn.itcast.scala.`trait`

    scala的trait执行报错: 错误: 找不到或无法加载主类 cn.itcast.scala.`trait`.Children 原因:包名写成了trait,与trait关键字重名了: package ...

随机推荐

  1. CDH5.16.1升级kafka0.10到1.0.1

        激活1.0.1的包    

  2. CentOS7使用阿里云的yum源

    替换成阿里云的yum源速度更快一些,替换很简单,简单记录一下步骤 1.备份原来的yum源 sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repo ...

  3. h5唤醒App

    一.应用场景 用户在访问我们的网页时,判断出这个用户手机上是否安装了我们的App,如果安装了则直接从网页上打开APP,否则就引导用户前往下载,从而形成一个推广上的闭环.这里只针对从网页端打开本地APP ...

  4. Windows 10安装Python 2.7和MySQL-python

    1. 安装Python Download Python 2. 安装MySQL-python pip install wheel (应该是可选) pip install mysqlclient==1.3 ...

  5. Sql service 分页存储过程

    create database Exam_Week3 GO USE Exam_Week3 GO create table Classs ( ClaID ,), ClassName ), Counts ...

  6. tomcat 搭建网站

    基本概念 JDK(Java Development Kit)是Sun Microsystems针对Java开发人员的产品.自从Java推出以来,JDK已经成为使用最广泛的Java SDK.JDK 是整 ...

  7. 一例tornado框架下利用python panda对数据进行crud操作

    get提交部分 <script> /* $("#postbtn").click(function () { $.ajax({ url:'/loaddata', data ...

  8. Acwing-271-杨老师的照相排列(DP)

    链接: https://www.acwing.com/problem/content/273/ 题意: 杨老师希望给他的班级拍一张合照. 学生们将站成左端对齐的多排,靠后的排站的人数不能少于靠前的排. ...

  9. 赋值语句C++(面宝P29)

    ; void main(){ int i=i; } 解析:main里面的i从声明的那一刻就是可见的了,所以main里的i不是1,而是一个未定义的值. 这段代码ctrl+F7编译能通过(有警告如下) c ...

  10. 【leetcode】801. Minimum Swaps To Make Sequences Increasing

    题目如下: We have two integer sequences A and B of the same non-zero length. We are allowed to swap elem ...