Search code examples
mysqlpermissionsprivilegessql-grant

MySQL: User with grant option can't grant create user


I created a user (new_user) with root like this:

GRANT ALL ON labor.* TO 'new_user'@'%' WITH GRANT OPTION;
GRANT ALL ON labor.* TO 'new_user'@'localhost' WITH GRANT OPTION;
GRANT CREATE USER ON *.* TO 'new_user'@'%';
GRANT CREATE USER ON *.* TO 'new_user'@'localhost';
GRANT RELOAD ON *.* TO 'new_user'@'localhost';
GRANT RELOAD ON *.* TO 'new_user'@'%'; 
FLUSH PRIVILEGES;

When I try to create another user the same way but with new_user, I get an access denied error. This error occurs after the GRANT ALL lines.

What else privilege should I add?


Solution

  • The newly create user is missing the grant option on *.* (needed for grant create user on *.* ...)

    GRANT GRANT OPTION ON *.* TO 'new_user'@'%';
    GRANT GRANT OPTION ON *.* TO 'new_user'@'localhost';