MySQL-无法授予根权限:拒绝用户访问';根'@';%';(使用密码:是)

MySQL-无法授予根权限:拒绝用户访问';根'@';%';(使用密码:是),mysql,mysql-workbench,Mysql,Mysql Workbench,我正在尝试向根用户授予完全权限。通过工作台(Windows)尝试后,此操作失败,并显示以下消息: Access denied for user 'root'@'%' (using password: YES) 在研究了这个问题(尝试了建议的修复和)之后,我尝试通过命令行授予root权限来解决这个问题,但失败的消息是相同的 如果我尝试在“root”@“localhost”上授予特权,则会出现相同的错误,可能是因为我仍在尝试通过用户“root”@“%”设置权限 MySQL文档()说 如果出现以

我正在尝试向根用户授予完全权限。通过工作台(Windows)尝试后,此操作失败,并显示以下消息:

Access denied for user 'root'@'%' (using password: YES)
在研究了这个问题(尝试了建议的修复和)之后,我尝试通过命令行授予root权限来解决这个问题,但失败的消息是相同的


如果我尝试在“root”@“localhost”上授予特权,则会出现相同的错误,可能是因为我仍在尝试通过用户“root”@“%”设置权限

MySQL文档()说

如果出现以下错误,则表示您使用的根密码不正确:

shell>mysqladmin-u root-pxxx版本用户访问被拒绝 'root'@'localhost'(使用密码:YES)

但我知道密码是正确的

安全性目前不是一个主要问题(在防火墙开发机器上运行)

显示“根”@“%”的授权的结果如下所示:

Grants for root@%

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS,
FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY 

TABLES,
LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW
VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, TRIGGER, CREATE TABLESPACE ON
*.* TO 'root'@'%' IDENTIFIED BY PASSWORD '<REMOVED>' |
| GRANT PROXY ON ''@'' TO 'root'@'%' WITH GRANT OPTION
root@%的授权
授予选择、插入、更新、删除、创建、删除、重新加载、关闭、处理、,
文件、引用、索引、更改、显示数据库、超级、创建临时
桌子,
锁定表、执行、复制从属、复制客户端、创建视图、显示
查看、创建例程、更改例程、创建用户、触发器、在上创建表空间
*由密码“”标识的''%1!''到''%2!''|
|使用GRANT选项将“@”上的代理授予“根”@“%”

我在这里做错了什么?

如果使用机器名而不是
“%”
(将与任何机器名匹配),会发生什么情况?我尝试授予“root”@“localhost”上的权限,但是,我得到了相同的错误,可能是因为我仍在尝试通过用户“root”@“%”进行设置?(后期编辑以显示输出)这显示了什么
show grants for'root'@''我已更新问题,以显示“根”@“%”的
show grants的输出
这对我来说很奇怪
show grants
准确地显示了您的第一个查询。一种解决方案是删除所有授权并对其进行重新分配,但如果删除授权,您可能无法将其重新授予,因此请小心。