mysql grant 授权

1:查看某用户的权限

show grants for root    或者 ..for root@localhost
查询结果
| GRANT USAGE ON *.* TO 'coffee'@'%' IDENTIFIED BY PASSWORD '。。' 
| GRANT ALL PRIVILEGES ON `test`.* TO 'coffee'@'%'      
| GRANT ALL PRIVILEGES ON `wechat`.* TO 'coffee'@'%' WITH GRANT OPTION             

2:授权

GRANT ALL PRIVILEGES ON `wechat`.* TO 'coffee'@'%' WITH GRANT OPTION      

 
 

语句中单引号不是必须的(password除外)

意思:授权 ALL 包括 select  insert update delete等所有的权限

wechat 是数据库 * 是任意的表

coffee 是用户名 ’%‘ 是任意主机 如果用户coffee不存在, 则新增该用户并将插入到数据库中

with grant option 指的是用户coffee具备grant(其他用户的)权限

最后:提交修改

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

注意一下 那个 % 这个ip可以访问吧

我如果用JDBC连接数据库,会报一个如下的错误

Access denied for user 'coffee'@'localhost' (using password: YES)

解决办法

GRANT ALL ON wechat`.* TO coffee@localhost  
这样就没事了。 

你可能感兴趣的:(mysql grant 授权)