I have mysql installed on my mac.
I am logged in as root and have created user1 and granted the following access to the database, sproc, and table in question (gotten by executing show grants for current_user:
Code:
| GRANT USAGE ON *.* TO 'user1'@'localhost' IDENTIFIED BY PASSWORD '*F29D00D619BC53E42CD9872D41B9A05F2FD32540' |
| GRANT EXECUTE ON `test`.* TO 'user1'@'localhost' |
| GRANT SELECT ON `test`.`testtable` TO 'user1'@'localhost' |
| GRANT EXECUTE ON PROCEDURE `test`.`firstprocget` TO 'user1'@'localhost'
When i log on as user 1, change the database context to "test" database, and try to exec the sproc i get the following error:
Code:
mysql> call firstProcGet;
ERROR 1370 (42000): execute command denied to user ''@'localhost' for routine 'test.firstProcGet'
ive removed and recreated the user a number of times but cant get this issue resolved. any ideas?
edit: the sproc was created by root, in case that matters.
also, if i run the below command to grant all privileges, it works, so i dont know where the happy medim is:
Code:
grant all privileges on *.* to user1@localhost;