如何将所有权限恢复到MySQL中的root用户?

Ste*_*ven 13 mysql privileges

我正在使用MySQL.我的root用户没有所有权限.如何将所有权限恢复给root用户?怎么一步一步做?

Joe*_*Joe 21

这在Ubuntu上对我有用:

停止MySQL服务器:

/etc/init.d/mysql stop
Run Code Online (Sandbox Code Playgroud)

从命令行启动MySQL:

/usr/sbin/mysqld
Run Code Online (Sandbox Code Playgroud)

在另一个终端输入mysql并发出:

grant all privileges on *.* to 'root'@'%' with grant option;
Run Code Online (Sandbox Code Playgroud)

您可能还想添加

grant all privileges on *.* to 'root'@'localhost' with grant option;
Run Code Online (Sandbox Code Playgroud)

并且可选择使用密码.

flush privileges;
Run Code Online (Sandbox Code Playgroud)

然后退出MySQL提示符,然后终止在前台运行的mysqld服务器.重启

/etc/init.d/mysql start  
Run Code Online (Sandbox Code Playgroud)

  • 经过 3 个小时的谷歌搜索并尝试了几乎所有方法后,唯一对我有用的解决方案! (2认同)

小智 8

如果您面临授予权限访问被拒绝问题,您可以尝试使用mysql_upgrade来解决问题:

/usr/bin/mysql_upgrade -u root -p
Run Code Online (Sandbox Code Playgroud)

以root身份登录:

mysql -u root -p
Run Code Online (Sandbox Code Playgroud)

运行以下命令:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
mysql> FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)


Kal*_*see 2

以 root 身份登录,然后运行以下 MySQL 命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)