您的位置:首页 > 数据库 > MySQL

Windows下Mysql 5.7.10不能登陆的问题

2016-01-22 10:39 561 查看
安装完成后,无法登陆mysql,按理说新安装后默认是以root用户登陆,而且密码为空,所以可以直接进的,但是出现了下面的问题

F:\mysql-5.7.10-win32\mysql-5.7.10-win32\bin>mysql -u root

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

经过我上网查资料后发现新版MySQL默认有密码,之后我尝试在配置文件中加了skip-grant-tables,重启之后可以进去了;所以一定是密码的问题

于是我又开始搜索各种解决办法,经过一番努力,终于找到了解决办法

mysql>delete from mysql.user where user='root' and host='localhost';

Query OK, 1 row affected(0.01 sec)

mysql> select user,host from mysql.user;

+-----------+----------+

|user |host |

+-----------+----------+

|mysql.sys |localhost |

+-----------+----------+

1 row in set(0.00 sec)

mysql>flush privileges;

Query OK,0 rows affected(0.00 sec)

mysql>grant all on *.* to 'root'@'localhost' identified by 'dingwei351';

Query OK,0 rows affected, 1 warning(0.00 sec)

mysql>select user,host from mysql.user;

+----------+-----------+

|user |host |

+----------+-----------+

|mysql.sys |localhost |

|root |localhost |

+----------+-----------+

2 rows in set(0.01 sec)

但是到这还是不行,你用下面的命令会发现一个情况

mysql>select * from mysql.user;

Grant显示N--mysql权限架构体系(应该是这么说)是关闭的,所以应该执行下面的操作

mysql>grant all on *.* to 'root'@'localhost' identified by 'dingwei351' with grant option;

Query OK,0 rows affected(0.01 sec)

退出mysql,将skip-grant-tables注掉,然后重启mysql。此时再登陆就可以了。

F:\mysql-5.7.10-win32\mysql-5.7.10-win32\bin>mysql -u root -p

Enter password:**********

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version:5.7.10 MySQL Community Server<GPL>

Copyright<c>2000,2015,Oracle and/or its affiliates.All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help' or '\h' for help.Type '\c' to clear the current input statement.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: