Помню, что где-то видел давно подобный вопрос, но в упор не помню где!
Итак, создаём нового локального пользователя на mysql сервере, так же создаём базу с таким же именем и даём ему права на все его базы.
SHOW GRANTS FOR dou@localhost;
+---------------------------------------------------------------------------------------------------------------+
| Grants for dou@localhost |
+---------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'dou'@'localhost' IDENTIFIED BY PASSWORD '*****' |
| GRANT ALL PRIVILEGES ON `dou`.* TO 'dou'@'localhost' |
| GRANT ALL PRIVILEGES ON `dou\_%`.* TO 'dou'@'localhost' |
+---------------------------------------------------------------------------------------------------------------+
Вроде бы, всё правильно. Пользователь заходит в phpmyadmin, видит только свои БД и нормально работает с ними. Однако вот вопрос - пользователь может создавать какие угодно новые БД вида "username_бла-бла-бла", но не может ни одну из этих БД удалить. Какие права нужно дать пользователю, чтобы он смог удалять свои БД?
Пользователь решил продолжить мысль 13 Октября 2015, 17:36:20:
Окей. Это был не косяк mysql, а косяк phpmyadmin.
$cfg['AllowUserDropDatabase'] = TRUE; в конфиге нормально помогло.