Centos7 安装mysql后登录提示:Access denied for user 'root'@'localhost'

安装mysql后登录提示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password:yes)

解决如下:

1.停止mysql服务

systemctl stop mysqld.service

2.修改配置文件无密码登录

vim /etc/my.cnf

在最后加上

skip-grant-tables

保存

3.启动mysql

systemctl start mysqld.service

4.登录mysql

mysql -u root

注意这里不要加-p

5.修改密码,mysql5.7用此语法

use mysql;

update mysql.user set authentication_string=password('123456') where user='root' ;
flush privileges;

6.回到第二部把刚加的那句删掉

保存,重启mysql就可以了
其实默认安装完了mysql后或在日志中生成一个默认的密码 /var/log/mysqld.log 中

拿到默认密码后登录mysql 进行密码重新设置

set pssword=password('your password');

如果密码级别与默认的级别要求不符时候会报

Your password does not satisfy the current policy requirements

此时需要修改级别与最小的默认密码位数

set global validate_password_policy=0;
set global validate_password_length=4;
然后在进行设置密码就好了



作者:xqchen
链接:https://www.jianshu.com/p/773675c4999c
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
posted @ 2020-06-14 17:09  从良少年  阅读(1242)  评论(0编辑  收藏  举报