尽管没有超级用户,如何在 MYSQL 中向(root)用户授予超级权限?

Posted

技术标签:

【中文标题】尽管没有超级用户,如何在 MYSQL 中向(root)用户授予超级权限?【英文标题】:how to give super permission to (root) user in MYSQL, despite there being no super user? 【发布时间】:2021-12-07 06:20:08 【问题描述】:

我正在使用 mysql 8.0.25,在 WAMP 服务器上运行。

我错误地将用户root的权限更改为未选中(插入)权限并按下(执行),因此分配了更改。

问题是:

超级用户 (root) 无法插入、查看数据库、创建或执行任何操作。 没有其他超级用户再次授予 (root) 超级权限或创建超级用户(如 root) 我无法创建超级用户或将超级权限返回给(root),因为没有超级用户

我想再次将所有权限返回给 root。我该怎么办?

你能帮我吗

【问题讨论】:

dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html 使用泛型方法,并添加完整的权限列表而不是 ALTER USER。 请说明方法 【参考方案1】:

MySQL 8.0 Reference Manual / ... / How to Reset the Root Password

执行“B.3.3.2.3 重置根密码:通用说明”中描述的通用操作。而不是ALTER USER ... 执行下一条语句:

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, EVENT, TRIGGER, 
      CREATE TABLESPACE, CREATE ROLE, DROP ROLE 
ON *.* TO `root`@`localhost` WITH GRANT OPTION;

GRANT APPLICATION_PASSWORD_ADMIN,AUDIT_ADMIN,BACKUP_ADMIN,BINLOG_ADMIN,
      BINLOG_ENCRYPTION_ADMIN,CLONE_ADMIN,CONNECTION_ADMIN,ENCRYPTION_KEY_ADMIN,
      FLUSH_OPTIMIZER_COSTS,FLUSH_STATUS,FLUSH_TABLES,FLUSH_USER_RESOURCES,
      GROUP_REPLICATION_ADMIN,INNODB_REDO_LOG_ARCHIVE,INNODB_REDO_LOG_ENABLE,
      PERSIST_RO_VARIABLES_ADMIN,REPLICATION_APPLIER,REPLICATION_SLAVE_ADMIN,
      RESOURCE_GROUP_ADMIN,RESOURCE_GROUP_USER,ROLE_ADMIN,SERVICE_CONNECTION_ADMIN,
      SET_USER_ID,SHOW_ROUTINE,SYSTEM_USER,SYSTEM_VARIABLES_ADMIN,
      TABLE_ENCRYPTION_ADMIN,XA_RECOVER_ADMIN 
ON *.* TO `root`@`localhost` WITH GRANT OPTION;

GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION;

【讨论】:

#1045 - 用户 'root'@'localhost' 的访问被拒绝(使用密码:否) 我做到了,但仍然拒绝访问

以上是关于尽管没有超级用户,如何在 MYSQL 中向(root)用户授予超级权限?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 JSON 文件中向用户发送消息?

如何在不清除数据库的情况下重新加载 Roo 项目?

如何通过 Alamofire 在 Swift 3 中向 MySQL 插入数据?

如何在 Swift 中向响应式网站添加后退按钮

MySQL:如何在查询中向日期时间字段添加一天

如何在Dynamics 365中向用户授予对实体的特定记录的读写访问请求?