In MySQL, how do you allow another user to create other users? In turn, those users should only be able to view some tables.
2 Answers
From MySQL's privileges documentation, the CREATE USER
privilege is the one you want:
GRANT CREATE USER ON *.* TO 'username'@'host'
For other privileges, read MySQL's GRANT
documentation.
Note, I've linked to MySQL 5.0 documentation. GRANT
hasn't changed much over the years, so any newer versions should also use the same syntax.
-
Thanks. To make it work, I had to specify GRANT CREATE USER ON . TO 'username'@'host'... Feb 8, 2013 at 5:15
-
-
1Sorry, that should be
*.*
(star dot star). Stackoverflow ate my asterisks. Feb 11, 2013 at 0:33
I think the answer is this:
GRANT INSERT on mysql.* to 'username';
GRANT RELOAD on *.* TO 'username'@'%';
Plus setting grant access on the relevant tables.
-
Or...I'm totally wrong. I got that from here: dev.mysql.com/doc/refman/5.1/en/adding-users.html Feb 8, 2013 at 5:08