в MySQL, как пользователь может создать базу данных владельца и писать в? - PullRequest
1 голос
/ 25 ноября 2011

i all

я смог назначить привилегию для создания новой базы данных пользователю с

root> GRANT CREATE ON *.* TO 'newuser'@'localhost';
newuser> create database newdb;
newuser> Query OK, 1 row affected (0.00 sec)

, теперь я хотел бы, чтобы newdb, только что созданный 'newuser', был доступен для записиСам newuser.

newuser> CREATE TABLE newtable ( id INT );
Query OK, 0 rows affected (0.00 sec)
newuser> INSERT INTO newtable (id) VALUES (1);
ERROR 1142 (42000): INSERT command denied to user 'offique'@'localhost' for table 'newtable'

Я пытаюсь установить привилегии (с тем же пользователем ...) без решения: - (

newuser> GRANT ALL PRIVILEGES ON newdb.* TO 'newuser'@'localhost';
ERROR 1044 (42000): Access denied for user 'newuser'@'localhost' to database 'newdb'

Любая идея?

большое спасибо!

1 Ответ

1 голос
/ 25 ноября 2011

Теперь я хотел бы, чтобы newdb, только что созданный newuser, был доступен для записи самому newuser. В этом случае достаточно предоставить привилегию INSERT на уровне базы данных -

GRANT INSERT ON *.* TO 'newuser'@'localhost';

Вы должны предоставить его из учетной записи root, поскольку ваш новый пользователь не имеет прав делать это самостоятельно.


GRANT INSERT ON newdb.* TO 'newuser'@'localhost';
...