#mysql #sql #ubuntu #permissions
#mysql #sql #ubuntu #разрешения
Вопрос:
Я создал сервер MySQL. Теперь пользователь login
имеет доступ ко всем базам данных. Я хочу, чтобы у этого пользователя не было доступа (поэтому он ничего не может сделать) к 3 базам данных:
information_schema
mysql
phpmyadmin
Таким образом, пользователь может использовать все базы данных, кроме этих 3. Как я могу это сделать?
Комментарии:
1. Я написал ответ на ServerFault о разрешениях MySQL . Существует множество ресурсов для выполнения подобных действий, но это дает краткий обзор того, как и почему
Ответ №1:
Краткая версия того, как это сделать (которая в основном объясняется в ссылке, которую я разместил выше):
- Вам нужны
REVOKE
GLOBAL
этого пользователя — это потому, что система привилегий MySQL является нисходящей. Если у них естьGLOBAL
привилегия наSELECT
, то это относится ко всем вашим базам данных - Затем вам нужно
GRANT
указать правильные привилегии для тех, к которым ему действительно нужен доступ (для этого вы можете использовать подстановочные знаки)
Важно отметить, что в MySQL нет понятия привилегии «ЗАПРЕТИТЬ».
Комментарии:
1. Спасибо :).
Deny
хотя было бы здорово.