Как MySQL работает как пользователь "_mysql" на Mac?
На Mac MySQL, похоже, сохраняет данные как пользователь "_mysql". Может кто-нибудь объяснить, пожалуйста, как это достигается. Я ожидал, что в приложении сервера MySQL (mysqld) будет установлен флаг setuid, чтобы он работал как _mysql, но это не так. Как же тогда он работает как _mysql?
1 ответ
Решение
Существует множество способов сделать это, но наиболее распространенными являются два:
- Процессы, запущенные с правами root, могут изменить свой идентификатор пользователя на любого другого пользователя в системе через собственное внутреннее программирование; большинство демонов, включая MySQL, работают именно так.
- Процессы могут быть начаты с
sudo -u _mysql mysqld
или это грубый эквивалент.