13.7.1.5 Выражение RENAME USER
RENAME USER old_user TO new_user
[, old_user TO new_user] ...
Выражение RENAME USER переименовывает существующие учетные записи MySQL. Возникает ошибка для устаревших учетных записей, которые не существуют, или новых учетных записей, которые уже существуют.
Для использования RENAME USER, необходимо иметь глобальный CREATE USER или UPDATE привилегии для базы данных системы mysql. Когда системная переменная read_only включена, RENAME USER дополнительно требует привилегии SUPER.
Каждое имя учетной записи использует формат, описанный в разделе 6.2.4 «Указание имён учетных записей». Например:
RENAME USER 'jeffrey'@'localhost' TO 'jeff'@'127.0.0.1';
Часть имени учетной записи, относящаяся к имени хоста, если опущена, по умолчанию равна '%'.
RENAME USER приводит к тому, что привилегии, имеющиеся у старого пользователя, переходят к новому пользователю. Однако, RENAME USER не приводит к автоматическому удалению или аннулированию баз данных или объектов в них, созданных старым пользователем. Это включает сохранённые программы или представления, для которых атрибут DEFINER обозначает старого пользователя. Попытки доступа к таким объектам могут привести к ошибке, если они выполняются в контексте безопасности definer. (Для получения информации о контексте безопасности см. раздел 23.6 «Контроль доступа к объектам хранимых процедур».)
Изменения привилегий вступают в силу, как указано в разделе 6.2.9 «Когда изменения привилегий вступают в силу».
© 2025 Oracle
Licensed under the GPLv2 License.