mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LONG729564606/article/details/79782160

此错误一般为密码错误

1.停止mysql服务

service mysqld stop

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

vim /etc/my.cnf

在此文件最后追加

skip-grant-tables(跳过密码验证)

3.启动mysql

service mysqld start

4.登录mysql

mysql -u root -p    密码直接按回车

5.修改密码

mysql> use mysql;
mysql> update user set password=password("new password") where user="root";
mysql> flush privileges;
mysql> quit

6.回到第二步骤去掉加上的配置

7.mysql重启,完成

service mysqld restart

对于远程连接1130错误

mysql;use mysql;    
mysql;select 'host' from user where user='root';    
mysql;update user set host = '%' where user ='root';    
mysql;flush privileges;    
mysql;select 'host'   from user where user='root';  

附:

其实默认安装完了mysql后或在日志中生成一个默认的密码 /var/log/mysqld.log 中

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

set password=password('you password');  

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

Your password does not satisfy the current policy requirements 

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

set global validate_password_policy=0;  
set global validate_password_length=4; 

然后在进行设置密码就好了

猜你喜欢

转载自blog.csdn.net/LONG729564606/article/details/79782160
今日推荐