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

stored procedure eseguite tramite jdbc

Potrebbe essere meglio concedere effettivamente l'accesso su mysql.proc tabella all'utente dell'applicazione. Quindi connettiti al tuo database MySQL come root ed esegui quanto segue:

GRANT SELECT ON `mysql`.`proc` TO '<username>'@'%';

La tua app Java dovrebbe quindi essere in grado di vedere i metadati corretti senza dover specificare noAccessToProcedureBodies=true

Assicurarsi inoltre che l'utente con cui ci si connette al database disponga dei privilegi di esecuzione sulla procedura in questione. Anche in questo caso, come utente root o come utente con privilegi di concessione:

GRANT EXECUTE ON PROCEDURE db.storedproc TO '<username>'@'%';

Buona fortuna!