MySQL各种权限(共27个)
(以下 *** 作都是以root身份登陆进行grant授权,以p1@localhost身份登陆执行各种命令。)
1 usage
连接(登陆)权限,建立一个用户,就会自动授予其usage权限(默认授予)。
mysql> grant usage on to ‘p1′@’localhost’ identified by ‘123′;
该权限只能用于数据库登陆,不能执行任何 *** 作;且usage权限不能被回收,也即REVOKE用户并不能删除用户。
2 select
必须有select的权限,才可以使用select table
mysql> grant select on pyt to ‘p1′@’localhost’;
mysql> select from shop;
3 create
必须有create的权限,才可以使用create table
mysql> grant create on pyt to ‘p1′@’localhost’;
4 create routine
必须具有create routine的权限,才可以使用{create |alter|drop} {procedure|function}
mysql> grant create routine on pyt to ‘p1′@’localhost’;
当授予create routine时,自动授予EXECUTE, ALTER ROUTINE权限给它的创建者:
mysql> show grants for ‘p1′@’localhost’;
数据库中,grant select on S to A是正确的写法,grant select on table S to A则是错误的写法。
针对grant select on S to A的解释:
其中grant是授权,select是查询权限,S是被授权的表或视图名称,A是被授权的用户。
举例:
1、当没有给用户 user1分配查询(select)权限时,在查询分析器中用user1登陆数据库student,
其连最基本的查询 *** 作都不能执行,截图如下:
2、用授权命令grant给user1添加查询的权限(注意要用管理员账户才能执行以下命令)
3、将查询 *** 作授权给user1后,用user1再次执行select命令,发现已经可以查询数据了。
以上就是关于MySQL的权限有哪些全部的内容,包括:MySQL的权限有哪些、数据库:grant select on table S to A和 grant select on S to A 那个是对的,还是都对。。。、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)