On Mac, MySQL seems to save data as the "_mysql" user. Can somebody please explain how this is achieved. I would have expected the MySQL server application (mysqld) to have the setuid flag set, so that it would run as _mysql, but this isn't the case. How, then, does it somehow run as "_mysql"?

1 Answer 1


There's a wide variety of ways this can be accomplished, but the two most common are:

  1. Processes started as root can change their user id to any other user on the system through their own internal programming; most daemons including MySQL operate this way.
  2. Processes can be started with sudo -u _mysql mysqld or it's rough equivalent.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.