如何授予用户访问mysql上所有存储过程的权限?

时间:2016-02-09 21:43:31

标签: mysql stored-procedures permissions

我正在尝试以下方法:

DROP USER IF EXISTS 'my_user'@'%';
CREATE USER 'my_user'@'%' IDENTIFIED BY 'my_pwd';
GRANT EXECUTE ON PROCEDURE mydb.* TO 'my_user'@'%';

但是我收到了错误:

Illegal GRANT/REVOKE command; please consult the manual to see which privileges can be used 0.000 sec

如果我明确地命名了一个过程:

DROP USER IF EXISTS 'my_user'@'%';
CREATE USER 'my_user'@'%' IDENTIFIED BY 'my_pwd';
GRANT EXECUTE ON PROCEDURE mydb.my_proc TO 'my_user'@'%';

然后它工作正常,但我想允许用户帐户访问数据库上的每个进程,无论如何都没有明确授予每个单独进程的权限?

1 个答案:

答案 0 :(得分:7)

使用它,它将起作用:

GRANT EXECUTE ON mydb.* TO 'my_user'@'%';