在安装完 MySQL 后,用默认的密码登录时,抛出如下异常:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
产生原因,之前卸载重新安装一次,安装后使用命令:
cat /var/log/mysqld.log | grep password
查看了临时的密码,但是登录始终不行。
总之,就是账号密码不正确的问题
解决方案思路:
既然无法登录,就直接跳过登录;然后修改密码。
既然有了解决的思路就开始行动吧!实现步骤如下:
1、打开配置文件,配置跳过密码登录
#vi /ect/my.cnf
通过末行模式找到 [mysqld],进入编辑模式,在 [mysqld] 后面,计算
skip-grant-tables
然后保存退出
2、启动 MySQL 服务,直接通过 mysql登录
systemctl start mysqld.service //启动mysql服务
mysql //进入mysql命令行模式,无需输入密码
3、执行修改密码的指令
注意:
update user set password=password(“Welcome_1”) where user=“root”;
以上方法会抛异常,找不到 password 这个字段。这个可能版本有关系,我现在使用的是 5.7.19 版本update user set authentication_string=password(“Welcome_1”) where user=“root”;
authentication_string 这个字段表示的就是认证的密码字段
4、退出,将之前添加的 skip-grant-tables 注释掉即可。就可以正常登陆了!