3

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 2

2

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.

3
  • Thanks. To make it work, I had to specify GRANT CREATE USER ON . TO 'username'@'host'... Feb 8, 2013 at 5:15
  • I'll edit the answer.
    – hrunting
    Feb 8, 2013 at 5:41
  • 1
    Sorry, that should be *.* (star dot star). Stackoverflow ate my asterisks. Feb 11, 2013 at 0:33
1

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.

1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .