添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在进行flask学习时,使用sqlalchemy 框架,在连接数据库(mysql)时报错,错误如下:
sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (1045, “Access denied for user ‘root’@‘localhost’ (using password: YES)”)
(Background on this error at: http://sqlalche.me/e/e3q8)
怀疑是前几天修改了MySQL的加密验证方式导致的,搜集相关资料得到如下解决方案:

1.通过cmd命令行连接MySQL, 使用命令mysql -u root -p
在这里插入图片描述
2.进入数据库后更改密码
具体方法是通过命令
use mysql;
select user,host from user;
查看所有用户的权限,
在这里插入图片描述
使用命令
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
在这里插入图片描述
即可修改成功啦!!
如遇到以下
在这里插入图片描述
红框内为‘%’,则使用命令
ALTER USER ‘root’@‘%’ IDENTIFIED WITH mysql_native_password BY ‘新密码’;
即可。

MySQL 1045 错误 就是数据库帐号、密码 错误 了。一般来说,给 MySQL 设置一个提供指定机器可连接的帐号密码即可。 但是,在使用 Flask - SQLAlchemy 时,还有另外一个坑,就是帐号、密码中有特殊字符,比如 ‘%’、 ‘@’等之类的。这个坑卡了几个小时,用其它方式连接数据库都没有问题,只有 基于 SQLAlchemy 的连接出现 错误 ,以为是相关驱动依赖的坑。看来包含特殊字符的 解决 sqlalchemy . exc . Operation al Error : (_ mysql _ exc eptions. Operation al Error ) (2006, )问题 engine = create_engine( ' mysql +py mysql ://user:[email protected]:3306') con = engine.connect() Background on this error at: http://sql al che.me/e/e3q8 【解决方法】 engine = create_engine( ' mysql +py mysql ://user:pass sqlalchemy . exc . Operation al Error : (py mysql .err. Operation al Error ) ( 1045 , " Access denied for user 'root'@'loc al host' (using password: YES)") django. db .utils. Operation al Error : ( 1045 , " Access denied for user 'root'@'loc al host' (using password: NO)") django. db .utils. Operation al Error : ( 1045 , " Access denied for user 'root'@'loc al host' (using password: NO)") django. db .utils. Operation al Error : (2003, ([Win Error 10061] 由于目标计算机积极拒绝,无法连接。)")django. db .utils. Operation al Error : (2003, ... sqlalchemy . exc . Operation al Error : (py mysql .err. Operation al Error ) ( 1045 , " Access denied for user 'jack'@'master' (using password: YES)") 但是 DB visu al 连接正常: 查看用户发现jack在外部%访问时和从loc... 在使用hello flask 第5章数据库中 在pycharm 的termin al 中建立虚拟环境pip inst al l virtu al env ,之后在运行 flask forge之后,在运行 flask run 。 已解决(pandas+ sqlalchemy 向数据库插入数据失败) sqlalchemy . exc . Operation al Error : (pymssql. Operation al Error ) (8152, b’String or binary data would be truncated. DB -Lib error message 20018, severity 16:\nGener al SQL Server error : Check messages from the SQL Server\n’) 我使用的是python3.6+py mysql + mysql 8.0 在cmd命令行直接输入 mysql 回车出现: ERROR 1045 (28000): Access denied for user 'O DB C'@'loc al host' (using password: N 这时在cmd命令行输入 mysql -u root -p 回车输入密码,就可以成功连接数据库 但用py mysql 登陆报错...