【问题标题】:MySQL only works with: skip-grant-tablesMySQL 仅适用于:skip-grant-tables
【发布时间】:2014-02-14 06:16:31
【问题描述】:

我忘记了root密码,所以用了几种不同的方法来重置,最终奏效了。

现在我无法在 PHPmyAdmin 上创建新数据库,显示“无权限”消息。

所以我尝试使用以下命令再次将所有权限添加到 ROOT:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

然后我得到错误:

#1290 - The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

所以我从 my.ini 中删除了“skip-grant-tables”,然后我的基于 MySQL 的站点停止工作。

我是不是正式捏造了?

【问题讨论】:

  • 您是否尝试过运行FLUSH PRIVILEGES 或重新启动您的mysql 服务器。
  • @KristerAndersson 我没有运行 FLUSH PRIVILEGES,但我已经重新启动了。
  • @KristerAndersson 冲洗有效。谢谢,添加为答案,我会选择它。

标签: mysql phpmyadmin xampp


【解决方案1】:

确保刷新权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

来自documentation

刷新权限

从 mysql 数据库的授权表中重新加载权限。

作为 GRANT 和 CREATE USER 语句的结果,服务器将信息缓存在内存中。该内存不会被相应的 REVOKE 和 DROP USER 语句释放,因此对于执行许多导致缓存的语句实例的服务器,内存使用量会增加。可以使用 FLUSH PRIVILEGES 释放此缓存内存。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-15
    • 1970-01-01
    • 2015-05-19
    • 2019-01-09
    • 1970-01-01
    • 2018-10-08
    • 2017-06-18
    相关资源
    最近更新 更多