Mik*_*ore 3 mysql user-permissions
我以 root 身份登录到 mysql。我可以添加这样的用户:
CREATE USER test01@localhost IDENTIFIED BY 'test01';
Run Code Online (Sandbox Code Playgroud)
当我尝试向test01
用户授予权限时,似乎什么也没发生:
GRANT SELECT,INSERT,UPDATE,DELETE ON test_database.* TO 'test01'@'localhost';
Run Code Online (Sandbox Code Playgroud)
所有*_priv
列都设置N
为test01
用户。
任何想法我在这里做错了什么?谢谢!
以下是结果 SHOW GRANTS...
mysql> SHOW GRANTS FOR 'test01'@'localhost';
+--------------------------------------------------------------------------------------+
| Grants for test01@localhost |
+--------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'test01'@'localhost' IDENTIFIED BY PASSWORD 'removed_hash' |
+--------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
Run Code Online (Sandbox Code Playgroud)
对于 test01 用户,所有 *_priv 列都设置为 N。
你从mysql.user
表中检查过吗,是这样的:
mysql> select * from mysql.user where user='test01' and host='localhost'\G
Run Code Online (Sandbox Code Playgroud)
如果是这样,您检查的位置不对。该表中的所有权限都是全局权限,使用on *.* 进行分配。
当您在数据库级别授予时on test_database.*
,您必须签入mysql.db
表:
select * from mysql.db where user='test01' and host='localhost' and db='test_database'\G
Run Code Online (Sandbox Code Playgroud)
阅读更多:http : //dev.mysql.com/doc/refman/5.0/en/grant.html
归档时间: |
|
查看次数: |
10186 次 |
最近记录: |