给mysql账号赋予存储过程权限_MySQL能否授予查看存储过程定义权限给用户

在其他RDBMS中,可以将查看某个存储过程(PROCEDURE)定义的权限给某个用户,例如在SQL Server中,可以单独将查看ProcedureName定义的权限授予UserA

GRANTVIEWDEFINITIONONProcedureNameTOUserA; --用具体的存储过程名和账号替换

那么在MySQL中能否实现这个功能呢? 找了很多资料,没有看到有这方面的功能,官方文档没有涉及这样的权限,网上有个方法:可以通过授予用户查询mysql.proc这样的权限来间接实现这个功能

grant select on mysql.proc tousrname@'xxx.xxx.xxx.xxx';

个人简单测试了一下,这样授权后,发现还是有一些其他问题。

mysql> show create procedure prc_insert;  --没有授权前报这个错误。ERROR 1305 (42000): PROCEDURE prc_insert does not existmysql> show create procedure prc_insert\G; --授权后*************************** 1. row ***************************Procedure: prc_insertsql_mode: STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTIONCreate Procedure: CREATE DEFINER=`root`@`localhost` PROCEDURE `prc_insert`(in  cnt int)begindeclare i int;set i=1;while i < cnt doinsert into test(id, name) select i,  C

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值