Navicat使用笔记04---Mysql相关问题-----1045 Access denied for user 'root'@'localhost' (using password: YES)报错

MySQL 连接错误,使用Navicat连接MySQL出现错误:1045 Access denied for user 'root'@'localhost' (using password: YES)

解决方案:

1.编辑mysql配置文件my.ini

 

在mysql的安装目录下

,在[mysqld]这个条目下加入 skip-grant-tables 保存退出后重启mysql

复制代码
[mysqld]
#作用是跳过登录的验证
#skip-grant-tables
port = 3306
basedir=C:\\softwaretool\\mysql-5.7.23-winx64
datadir=C:\\softwaretool\\mysql-5.7.23-winx64\\data 
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
max_allowed_packet = 20M
[mysql]
default-character-set=utf8
复制代码

2.重启mysql

在计算机-管理-服务里面找到MySQL的服务,如图

 

这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现 password:的时候直接回车可以进入,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为没有grant权限。

3.进入mysql数据库,给root用户设置密码

 

mysql> use mysql; 
mysql> update mysql.user set authentication_string=password('密码') where user='root' ;

 

4.刷新数据库,并退出

 

mysql> flush privileges;
mysql> quit; 

 

5.修改my.ini文件

改好之后,再修改一下my.ini这个文件,把我们刚才加入的 "skip-grant-tables"这行删除,保存退出再重启mysql服务,再重新用Navicat连接就可以了。

复制代码
[mysqld]
#作用是跳过登录的验证
#skip-grant-tables
port = 3306
basedir=C:\\softwaretool\\mysql-5.7.23-winx64
datadir=C:\\softwaretool\\mysql-5.7.23-winx64\\data 
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
max_allowed_packet = 20M
[mysql]
default-character-set=utf8
复制代码

 

posted @   雨后观山色  阅读(3955)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示