Mysql
 sql >> Database >  >> RDS >> Mysql

Autorizzazioni per le stored procedure MySQL

Il tuo secondo tentativo è l'approccio giusto:

GRANT EXECUTE ON PROCEDURE myDB.spName TO 'TestUser'@'localhost';

ma se non funziona, verifica ...

a) tu (l'utente da cui stai eseguendo tutti questi comandi) hai i diritti di concessione [cioè WITH GRANT OPTION]. Se sei root, hai i diritti di concessione.

b) esiste l'utente a cui stai concedendo l'autorizzazione all'esecuzione, ad es.

 select user from mysql.user where user  like  'test%';

In caso contrario, crea l'utente ad es.

CREATE USER 'TestUser'@'localhost' IDENTIFIED BY 'passwordxxxx';
#depending on your needs
GRANT SELECT,DELETE,UPDATE PRIVILEGES ON myDb.* TO 'TestUser'@'localhost'; 

Spero che questo aiuti :)