23.2.2 Хранимая процедура и привилегии MySQL
Система грантов MySQL учитывает хранимые процедуры следующим образом:
Для создания хранимых процедур необходима привилегия
CREATE ROUTINE.Для изменения или удаления хранимых процедур необходима привилегия
ALTER ROUTINE. Эта привилегия автоматически предоставляется создателю процедуры, если необходимо, и отменяется, когда процедура удаляется.Для выполнения хранимых процедур требуется привилегия
EXECUTE. Однако эта привилегия автоматически предоставляется создателю процедуры, если необходимо (и отменяется, когда процедура удаляется). Кроме того, по умолчанию характеристикаSQL SECURITYдля процедуры -DEFINER, что позволяет пользователям, имеющим доступ к базе данных, с которой связана процедура, выполнять процедуру.Если переменная системы
automatic_sp_privilegesравна 0, привилегииEXECUTEиALTER ROUTINEне предоставляются и не отменяются автоматически для создателя процедуры.Создателем процедуры является учетная запись, используемая для выполнения соответствующего оператора
CREATE. Это может не совпадать с учетной записью, указанной какDEFINERв определении процедуры.
Сервер управляет таблицей mysql.proc в ответ на операторы, создающие, изменяющие или удаляющие хранимые процедуры. Ручное управление этой таблицей не поддерживается.
© 2025 Oracle
Licensed under the GPLv2 License.