mysql登录错误的解决方法

Table of Contents

一、mysql登录错误

mysqladmin: connect to server at 'localhost' failed

error: 'Access denied for user 'root'@'localhost' (using password: NO)'

解决办法:破解mysql密码

1>停止mysql服务:service mysqld stop

2>杀死所有mysqld相关的进程,建议使用kill -9 ,一步到位

3>执行命令:> mysqld_safe --skip-grant-tables & mysql -uroot -p 回车进入

> use mysql;

> update user set password=PASSWORD("newpass")where user="root";

更改密码为 newpass

> flush privileges; 更新权限

> quit 退出

4>重启mysql服务:service mysqld restart

5>连接数据库:mysql -uroot -p new-passwd

二、忘记本地root的登录密码

解决过程:

1、编辑/etc/my.cnf

在[mysqld] 配置部分添加一行

skip-grant-tables

2、保存后重启mysql

[root@localhost etc]# service mysqld restart
3、登录数据库重新设置root密码

[root@localhost ~]# mysql -uroot -p mysql
Enter password:

直接回车进入

mysql> show databases;
执行下列语句
mysql> update user set password=password("mysql") where user='root';
mysql> flush privileges;

4、删除/etc/my.cnf文件中添加的“skip-grant-tables”行,重启mysql;

用新设的密码就能正常登录了;