ユーザがデータベース内のストアドプロシージャを実行するのではなく、MySQLデータベースのストアドプロシージャレベルでストアドプロシージャを実行する権限をユーザに与えようとしています。私は、次のコードを実行しようとしていた。MySQLストアドプロシージャのパーミッション
GRANT EXECUTE ON myDB.spName TO 'TestUser'@'localhost';
をしかし、私は、次のエラーを取得しておいてください。Illegal GRANT/REVOKE command, please consult the manual to see which privileges can be used.
私は次のようにそれを変更してみました:
GRANT EXECUTE ON PROCEDURE myDB.spName TO 'TestUser'@'localhost';
と私が取得します別のエラー:Cant find any matching rows in the user table.
私はどこに間違っているのか混乱していますか?
また、MySQL Workbenchでは、GUIを使用してストアドプロシージャレベルで権限を与える方法がないようです。これは正しいのですか、何か不足していますか?
ありがとうございます。
Imは、ルートとしてログインしてコードを実行しているときにユーザが存在する:mysql.userからユーザーのテスト% 'のような選択をユーザに。しかし、私はまだ同じエラーが発生しているようです。 – Olly
私が示唆したように新しいユーザーを追加しようとしました。 – sakhunzai
もう一度パスワードを入力してください: '猶予実行' myDB.spName TO 'TestUser' @ 'localhost' 'password'; ' – sakhunzai