报错“pymysql.err.OperationalError: (1045, "Access denied for user ‘root’@‘localhost’ (using password: NO)”
原因:(1)连接数据时,password没有输入正确
(2)连接时指定的DB库名错误
解决方式:(1)需要确认一下链接数据库的密码是否正确,通过cmd的代码“mysql -u root -p”,然后输入密码:******,查看是否可以连接数据库,若不能连接数据库说明密码错误。若是不记得数据库的密码,可以重置密码。
(2) 检查数据库名是否正确,若没有该数据库,则及时创建数据库
MySQL 重置 root 用户密码
在配置文件 /etc/my.cnf 添加配置,重启 MySQL
无密码登录
skip-grant-tables
登陆 MySQL 客户端,不需要密码,选择 mysql 库
mysql -uroot -p
use mysql;
修改 MySQL root 用户密码
5.7 版本之后已经没有了 password 字段,而是用 authentication_string 加密字段代替
update user set authentication_string=password('root') where user='root';
5.7 版本以前
update user set password=password('root') where user='root';
本人是由于密码不正确而报错,密码修改正确后恢复正常。