在mySQL 5.6中创建新用户时出现问题
我想要什么:
当我创建新用户时,它没有任何特权,我只想在几个特定的列中授予一些选择和更新。因此,他应该能够更新所有数据库中的任何内容。听起来很公平。
因此,首先,我创建了一个新用户:
CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
之后,我使用新用户登录,当我执行
show grants;
命令我有这个:
GRANT USAGE ON *.* TO 'newuser'@'%' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19'
所以在我的理论中,他不能在我的数据库中做任何事情,因为他没有
GRANT SELECT
特权
但当我在测试表中进行选择时,他可以查看所有列和所有结果。他可以更新。。。做他想做的一切。这就像他有一个
GRANT SELECT,UPDATE,DELETE ... ON *.* TO 'newuser'@'%'
但我不能撤销,因为他没有。
当然,我试图撤销所有特权,但我不能,因为他没有任何特权。
我希望我是清白的。所以我很困惑,有什么想法吗?
谢谢
Clment公司