Mysql: выполнить команду, запрещенную пользователю '' @ 'localhost' для обычной ошибки - PullRequest
23 голосов
/ 22 июня 2011

У меня возникла проблема во время открытия моего старого сайта.Моя таблица dataTable:

DataTables warning: JSON data from server could not be parsed. This is caused by a JSON formatting error.

После этого я попытался отладить свой скрипт и обнаружил ошибку в mysql:

Error occuered during query execution: 
(<small>SELECT SQL_CALC_FOUND_ROWS ID,name,remark,avrusepmonth 
        , CONCAT('&lt;input type=''checkbox''id=''cb' , ID ,''' name=''check[]''                
        value=''',ID,''' &gt;','&lt;label class=''lbcb'' for=''cb', 
        ID,'''&gt;&lt;=update=&lt;/label&gt;') as checkb 
        ,monthavrage(ID,12) as latestavr , moq, leadtime 
        FROM test_media  WHERE nowuse=1 and monthavrage(ID,12)  &gt; 0  ORDER BY  name
        desc, ID
        LIMIT 0, 10</small>):
 execute command denied to user 'jeinqa'@'localhost' for routine 'TestMediaControl.monthavrage'

Затем я попытался поискать по номеру execute command denied to user 'jeinqa'@'localhost' for routine 'TestMediaControl.monthavrage' и некоторые сайты сказаличто я должен сделать немного GRANT:

GRANT EXECUTE ON PROCEDURE TestMediaControl.monthavrage TO 'jeinqa'@'localhost'

, но я получил:

#1370 - execute command denied to user 'jeinqa'@'localhost' for routine 'TestMediaControl.monthavrage'

Не могли бы вы сказать мне, как я должен сделать для решения этой проблемы?

Ответы [ 3 ]

33 голосов
/ 10 сентября 2011

работает ..... Я пытаюсь предоставить эту привилегию в root.

  1. войти как root
  2. GRANT EXECUTE ON PROCEDURE TestMediaControl.monthavrage TO 'jeinqa'@'localhost'
  3. flush privileges;
10 голосов
/ 12 марта 2014

Очень поздно на вечеринку тоже попробуйте комбинацию.

GRANT EXECUTE ON PROCEDURE TestMediaControl.monthavrage TO 'jeinqa'@'%';

И

flush privileges;

Также попробуйте заменить PROCEDURE на FUNCTION.

4 голосов
/ 23 ноября 2016

Я столкнулся с этим в phpMyAdmin несколько часов назад, когда выполнял хранимую процедуру с тем, что, как я думал, будет обнаружено как синтаксическая ошибка.

Я пропустил запятую между именем поля и вычисляемым полем, и это привело к тому же сообщению об ошибке.

...