MySQL权限,允许/不允许

时间:2013-04-15 17:06:53

标签: mysql database privileges

我一直在玩MySQL数据库中的用户权限,但仍然无法得到理想的结果。

昨天,我授予权限,然后撤销,用户仍然拥有它。 (相同的浏览器,只退出)。重新启动浏览器后,它确实按预期工作。

今天,我设置了权限

GRANT CREATE ON `testdb`.`testtbl` TO 'ttt'@'localhost' IDENTIFIED BY 'test'

我没有看到“testdb”,但我也看到了表“测试” - 我不应该。当我去数据库“testdb”时,我无法创建表。它说

  

对表'ttbl'的用户'ttt'@'localhost'拒绝CREATE命令

SQL命令:

CREATE TABLE `ttbl` (
  `test1` int NOT NULL,
  `test2` int NOT NULL
) COMMENT='';

我想我错过了这个特权的一些观点,但我还是不知道出了什么问题。

仅使用此命令会出现什么问题? (不是CREATE USER,不确定是否强制要求)

由于

1 个答案:

答案 0 :(得分:2)

在MySQL中,更改权限后,始终运行以下命令:

flush privileges;

它强制MySQL运行时主动重新加载特权表,因此会清除所有其他过时的特权。它不会自动执行此操作,因为它必须主动检测授权表的更改。