python3.6.x连接mysql数据库报错1045,using password: NO

版权声明:本文为博主原创文章,转载需注明出处。 https://blog.csdn.net/AsynSpace/article/details/80680762

上面是我运行时报的错误,下面是我连接数据库的代码:

conn = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='root', db='mywebsite')

按照菜鸟教程的python3连接数据库方法,却一直报错。无奈之下四处找解决方案。终于找到了一个靠谱而且简单的解决方法。

首先:

mysql -u 用户名 -p 数据库名

然后:

ALTER USER '用户名'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
例如,我的用户名是root,密码是root。要连接的数据库是mywebsite
mysql -u root -p mywebsite
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
然后再去试一下之前的连接代码。就OK了。


目前是解决方案。至于原因,我还在找,希望明白原因的大佬给讲解一下

猜你喜欢

转载自blog.csdn.net/AsynSpace/article/details/80680762