我只想让某一用户有mysql的查询权限(仅查询ariticle,article_2,article_3三张表的权限),即SELECT create_time,content,url FROM article where ORIG_TIME>='2009-04-01' ;
但当我grant select on mydb.article to chaxun@localhost identified by "chaxun_123";
然后以chaxun用户查询article表时,总是提示access denied for "chaxun@localhost",为什么?
如何做可以实现我的想法?
但当我grant select on mydb.article to chaxun@localhost identified by "chaxun_123";
然后以chaxun用户查询article表时,总是提示access denied for "chaxun@localhost",为什么?
如何做可以实现我的想法?
然后到
mysql.user
mysql.db
mydql.tables_priv显示一下这个用户的信息。
或者贴出这些信息,大家可以帮你分析一下。
用户只有重新连接 MySQL 数据库,权限才能生效。
1.用户[amy]进入数据库[amy],密码111111,建表article
mysql -u amy -p111111 wdd
mysql> create table article (id int, create_time date, content text, url varchar(255), ORIG_TIME date);
Query OK, 0 rows affected (0.00 sec)
2.用户[root]进入数据库[amy],密码222222,给用户[chaxun]授权
mysql -u root -p222222 amy
mysql> grant select on amy.article to chaxun@localhost identified by "chaxun_123";
Query OK, 0 rows affected (0.00 sec)
3.用户[root]进入数据库[amy],查询表[article]
mysql -u chaxun -pchaxun_123 amy
mysql> SELECT create_time,content,url FROM article where ORIG_TIME>='2009-04-01' ;
Empty set (0.01 sec)都是正常的啊,不知道你哪里出问题了.