当我为某些特定表授予用户权限时:
GRANT ALL PRIVILEGES ON table1.* TO 'user1'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON table2.* TO 'user1'@'localhost' IDENTIFIED BY 'password';
如何撤销此用户的权限,仅供参考table1
?
谷歌是你的朋友! http://dev.mysql.com/doc/refman/5.7/en/revoke.html
句法:
REVOKE ALL PRIVILEGES ON table1.* FROM 'user1'@'localhost';
为了进一步解释这个答案 - 我将教导如何捕鱼(而不仅仅是给你一条鱼).
MySQL文档最初看起来很混乱 - REVOKE
看起来像这样的"语法" :
REVOKE priv_type [(column_list)] [, priv_type [(column_list)]] ... ON [object_type] priv_level FROM user [, user] ... REVOKE ALL PRIVILEGES, GRANT OPTION FROM user [, user] ... REVOKE PROXY ON user FROM user [, user] ...
这意味着有三种"方式"来调用它:
REVOKE priv_type ...
REVOKE ALL PRIVILEGES, GRANT ...
REVOKE PROXY ON ...
这三个由MySQL文档页面中的空行分隔.
对于其中的每一个,都有"可选"参数/设置/值.这些用方括号表示,例如:
REVOKE priv_type [(column_list)] ...
这(column_list)
是可选的.你可以提供,但你不要有来.
类似地,你可以将它们链接在一起 - 它们缩进下一行以指示这一点(并用于...
表明你可以继续重复):
priv_type [(column_list)] [, priv_type [(column_list)]] ... <-- indented, and note the "..."
MySQL文档中存在更复杂的示例 - 就像CREATE TABLE
您有可选标志列表一样:
[COLUMN_FORMAT {FIXED|DYNAMIC|DEFAULT}]
这{x|y|z}
句法表示您必须指定其中之一({...}
非可选的[...]
手段里面的东西是可选的-因此,如果指定COLUMN_FORMAT
,在以下三个标志之一所需),管道(|
)表示只能指定一个的列表(FIXED
/ DYNAMIC
/ DEFAULT
).
最后要说的是 - 非常了解MySQL文档版本.它在网站上的几个地方都有说明 - 我个人只看网址:
http://dev.mysql.com/doc/refman/5.7/en/create-table.html
注意它5.7
在里面说.这意味着您正在阅读的文档可能不适用于MySQL 5.7以外的任何版本.这让我经历了很多次......通常当我在枪下试图解决恐慌事件时!总是仔细检查一下.