MySQL 5.7无法使用root登录

时间:2014-10-17 16:03:02

标签: mysql root

我在VM中使用Debian并且我尝试使用skip-grant-tables方法,但我仍然无法使用“root”用户登录。我还允许使用命令

从任何IP连接
UPDATE mysql.user SET Host='%' WHERE Host='localhost' AND User='username'

我在使用skip-grant-tables选项启动sql之后附上了我运行的命令的屏幕截图。

enter image description here

1 个答案:

答案 0 :(得分:0)

自5.6以来db格式已更改,因此您需要升级表。埋藏在http://dev.mysql.com/doc/refman/5.7/en/upgrading-from-previous-series.html内你会发现一些细节。这是tl; dr;

首先,如果数据库正在运行,请停止它:

sudo /etc/init.d/mysql stop

切换到mysql用户以简化操作

sudo -u mysql /bin/bash

以安全模式启动数据库

mysqld_safe --skip-grant-tables &

在root用户的另一个控制台中,开始升级

sudo su
mysql_upgrade 

完成后,您可以停止安全模式,然后返回现场:

mysqladmin shutdown
/etc/init.d/mysqld start

从那里你可以以root身份重新登录并获得你需要做的事情。