MySQL登录出现 ERROR 1045 (28000): Access denied for user 'root'@'localhost'
方法/步骤
-
刚刚接触MySQL时可能会出现这样的问题:
当cmd中输入mysql -u root -p后会出现以下问题:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password)
可以这样做,先找到mysql bin目录下的my.ini文件打开编辑,并在[mysql]下面加上skip-grant-tables,用于跳过密码问题,但是这并不能彻底解决。
-
重启mysql服务
net stop mysql
net start mysql
-
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
init_connect='SET NAMES utf8'
skip-grant-tables
-
进入数据库,重置密码。
mysql -u root -p Enter
不用管password Enter
mysql> use mysql; Enter
mysql> update user set password=password("新密码") where user="root"; (密码自己设)
mysql>flush privileges; 刷新数据库
mysql> quit;
-
修改my.ini ,注释掉skip-grant-tables(以防下次出问题)
保存退出
-
重启MySQL服务(步骤二)。