Исходный код для хранимых процедур, которые вы загружали, вероятно, содержит "DEFINER=root@'%'" как часть определения, что выглядит примерно так:
create definer='root'@'%' procedure sp_test() begin end;
Проблема здесь в том, что у вас нет учетной записи в вашей системе для 'root'@'%'. Это можно легко продемонстрировать. Из командной строки MySQL:
show grants for 'root'@'%';
Я ожидаю, что это вернется с сообщением об ошибке:
ERROR 1141 (42000): There is no such grant defined for user 'root' on host '%'
Исправление состоит в том, чтобы изменить источник ваших хранимых процедур или создать отсутствующую учетную запись:
grant all on *.* to 'root'@'%' identified by 'password' with grant option;
Как правило, иметь такую мощную учетную запись, доступную из любого места, не очень хорошая идея, но это уже другая история.
person
Martin
schedule
08.03.2010