【发布时间】:2011-07-14 07:53:51
【问题描述】:
发件人:http://dev.mysql.com/doc/refman/5.0/en/drop-database.html
...删除数据库时,不会自动删除数据库上的用户权限。
那么问题就变成了,如何撤销 MySQL DB 上所有用户的所有权限?我想这很简单,但我很惊讶我无法在任何地方找到它。
【问题讨论】:
-
您可以使用
revoke命令。
标签: mysql
发件人:http://dev.mysql.com/doc/refman/5.0/en/drop-database.html
...删除数据库时,不会自动删除数据库上的用户权限。
那么问题就变成了,如何撤销 MySQL DB 上所有用户的所有权限?我想这很简单,但我很惊讶我无法在任何地方找到它。
【问题讨论】:
revoke 命令。
标签: mysql
REVOKE ALL PRIVILEGES ON *.* FROM '<user_name>'@'localhost';
REVOKE ALL PRIVILEGES ON *.* FROM '<user_name>'@'%';
例如:
REVOKE ALL PRIVILEGES ON *.* FROM 'jeffrey'@'localhost';
REVOKE ALL PRIVILEGES ON *.* FROM 'jeffrey'@'%';
【讨论】:
您可以使用this syntax 撤销特定用户的所有权限:
REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ...
FLUSH PRIVILEGES;
删除指定用户的所有全局、数据库、表、列和例程权限
但不确定是否有办法同时为所有用户执行此操作。
【讨论】:
revoke all, with grant on $dbs.* from 'user'\@'localhost'。有什么线索吗?
我想你可以这样做:
REVOKE ALL PRIVILEGES FROM '%'@'%';
FLUSH PRIVILEGES;
(不要直接修改 MySQL 表)
【讨论】:
REVOKE ALL PRIVILEGES FROM '%'@'%';
以上可能很危险,因为我想它会删除所有用户的所有权限,包括 root
修改为:
REVOKE ALL PRIVILEGES FROM 'user'@'localhost';
或
REVOKE ALL PRIVILEGES FROM 'user'@'%';
执行前
【讨论】: