【问题标题】:Clearing Out MySQL Grants on Startup Before Granting Again在再次授予之前清除启动时的 MySQL 授予
【发布时间】:2020-07-09 16:15:04
【问题描述】:

我想设置我的代码以在启动时清除“用户”的所有授权,然后授予他们新的权限,有点像这样。

从“用户”中撤销 db.* 上的所有权限;

GRANT SELECT, EXECUTE ON db.* TO 'user';

但是,我收到以下错误:

SQL 错误 [1141][42000]:没有为主机 '%' 上的用户 'user' 定义此类授权

是否有某种功能,当且仅当用户存在时,我可以撤销用户的权限?

【问题讨论】:

    标签: mysql database


    【解决方案1】:

    没有。解决这个问题的简单、略显可笑的方法是

    GRANT SELECT ON db.* TO 'user';
    REVOKE ALL PRIVILEGES ON db.* FROM 'user';
    GRANT SELECT, EXECUTE ON db.* TO 'user';
    

    【讨论】:

    • 这太荒谬了,但我感谢您的回复。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2012-07-26
    • 2019-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-12
    • 1970-01-01
    相关资源
    最近更新 更多