关于mysql create routine 权限的一些说明
1、如果用户有createroutine权限那么他就可以创建procedure|function。
2、如果用户创建了procedure|function那么mysql会自动赋予它对procedure|function的alterroutine和execute权限。
3、例子:
用户root用户创建一个spuser@'localhost'用户并对它赋予createprocedure权限
grantcreateroutineontempdb.*tospuser@'localhost'identifiedby'123456';
用spuser@'localhost'用户去创建一个routine
delimitergo createproceduresp_hello_world() begin select'helloworld'; end go delimiter;
再一次查看spuser@'localhost'的权限
mysql>showgrants; +---------------------------------------------------------------------------------------------------------------+ |Grantsforspuser@localhost| +---------------------------------------------------------------------------------------------------------------+ |GRANTUSAGEON*.*TO'spuser'@'localhost'IDENTIFIEDBYPASSWORD'*6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9'| |GRANTCREATEROUTINEON`tempdb`.*TO'spuser'@'localhost'| |GRANTEXECUTE,ALTERROUTINEONPROCEDURE`tempdb`.`sp_hello_world`TO'spuser'@'localhost'| +---------------------------------------------------------------------------------------------------------------+
以上这篇关于mysqlcreateroutine权限的一些说明就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。