授予权限时出错
问题描述:
我正在使用MySQL Workbench和MySQL 5.6。授予权限时出错
我想创建一个只能执行存储过程的用户。
所以我创建了一个用户,给了一个密码并给了'routine.execute'这个角色。
它会产生这样的:
CREATE USER 'serveruser' IDENTIFIED BY 'PASSWORD';
GRANT EXECUTE ON ROUTINE `myschema`.* TO 'serveruser';
和产生这个错误:
Executing SQL script in server
ERROR: Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '`myschema`.* TO 'serveruser'' at line 1
GRANT EXECUTE ON ROUTINE `myschema`.* TO 'serveruser'
SQL script execution finished: statements: 228 succeeded, 1 failed
但是,如果我选择其他角色,如业主或table.insert,它通过就好了。
答
尝试改用:
GRANT EXECUTE ON PROCEDURE `myschema`.* TO 'serveruser'
答
与
CREATE USER 'serveruser' IDENTIFIED BY 'PASSWORD';
GRANT EXECUTE ON PROCEDURE `myschema`.* TO 'serveruser';
试试你来了先:) – Miki 2014-10-03 18:30:58
LOL :)谢谢美姬 – danmullen 2014-10-03 18:31:47