минусплюс +2
05.10.2015 20:34 Обновлено: 18.05.2022 14:31
Ошибка MYSQL 1449

При добавлении записи в таблицу получал ошибку 1449 даже от рута. Как же это может быть что у рута нет каких-то привилегий. Осознал, что у этой таблицы моей есть триггер, который не могу запустить из-за нехватки прав. Советы в гугле на аглицком и не очень понятные какие-то… Копаясь нашёл такую команду:

увидел, что definer root@% но я-то root@localhost и это нормально ходить под рутом с локалхоста, а не с любого… Править эту таблицу не удалось. Alter trigger не нашёлся… 🙁

Решение, которое я нашёл такое: с помощью workbench сделал дамп базы с триггерами и процедурами и сделал "заменить всё во всех файлах" такой строки: DEFINER=root@% на DEFINER=CURRENT_USER. Это решило вопрос. Удаётся добавлять не только рутом, но и любым пользователем у которого есть привилегии на управление данной схемой.