Платформы корпоративных информационных систем

         

GRANT



GRANT

GRANT privilege [ (column, ...) ] [, privilege [( column, ...) ] ...]

ON {table} TO user [IDENTIFIED BY 'password']

[, user [IDENTIFIED BY 'password'] ...] [WITH GRANT OPTION]

До версии MySQL 3.22.11 оператор GRANT распознавался, но не выполнялся. В текущих версиях функциональность присутствует. Этот оператор дает пользователю (или пользователям) права доступа. Возможно предоставление прав доступа на базу данных, таблицу или на отдельный столбец. Параметр table может быть указан как имя таблицы в текущей базе; как '*', и тогда будут предоставлены права на все таблицы текущей базы; как '*. *' - права на все таблицы во всех имеющихся базах; или как 'database. *', что будет иметь эффект для всех таблиц указанной базы данных.

В настоящий момент поддерживаются следующие права:

ALL PRIVILEDGES/ALL

Все права доступа.

ALTER

Изменение структуры таблиц.



CREATE

Создание новых таблиц.

DELETE

Удаление записей из таблиц.

DROP

Удаление таблиц целиком.

FILE

Создание и удаление целых БД, а также управление файлами журналов.

INDEX

Создание и удаление индексов в таблицах.

INSERT

Ввод данных в таблицы.

PROCESS

Завершение потоков.

REFERENCES (Справочник)

Пока не реализовано.

RELOAD

Обновление различных внутренних таблиц (см. оператор FLUSH).

SELECT

Чтение данных из таблицы.

SHUTDOWN

Выключение (Shut down) сервера базы данных.

UPDATE

Модификация записей внутри таблиц.

USAGE

Нет никаких прав.

Переменная user имеет вид user@hostname (пользователь@имя хоста). И user, и hostname могут включать в себя знаки подстановки SQL. При их использовании должно быть заключено в кавычки либо полностью имя, либо только часть с подстановочными знаками (например, joe@"%. com" и «joe@%.com» одинаково правильны). Использование user без hostname равносильно использованию user@«%».

Если у вас есть право GRANT, вы можете указать необязательный параметр INDENTIFIED BY . Если описываемого пользователя не существует, он будет создан вместе с указанным паролем. Иначе будет изменен пароль существующего пользователя.

Право GRANT задается с помощью спецификатора WITH GRANT OPTION . После его выполнения пользователь сможет предоставить любое из имеющихся у него прав другому пользователю.



Содержание раздела