Spec-Zone .ru
спецификации, руководства, описания, API

6.1.5. Как к MySQL Run как Нормальный Пользователь

На Windows можно выполнить сервер как службу Windows, используя нормальную учетную запись пользователя.

На Unix сервер MySQL mysqld может быть запущен и выполнен любым пользователем. Однако, следует избежать выполнять сервер как Unix root пользователь для соображений безопасности. Изменить mysqld, чтобы работать как нормальный непривилегированный пользователь Unix user_name, следует сделать следующее:

  1. Остановите сервер, если он работает (используйте mysqladmin завершение работы).

  2. Измените каталоги базы данных и файлы так, чтобы user_name имеет полномочия считать и записать файлы в них (Вы, возможно, должны были бы сделать это как Unix root пользователь):

    shell> chown -R user_name /path/to/mysql/datadir

    Если Вы не сделаете этого, то сервер не будет в состоянии получить доступ к базам данных или таблицам, когда он будет работать как user_name.

    Если каталоги или файлы в пределах каталога данных MySQL являются символьными ссылками, chown -R не мог бы следовать за символьными ссылками для Вас. Если это не сделает, то Вы должны будете также следовать за теми ссылками и изменить каталоги и файлы, на которые они указывают.

  3. Запустите сервер как пользователя user_name. Другая альтернатива должна запустить mysqld как Unix root пользователь и использование --user=user_name опция. mysqld запускает, затем переключается, чтобы работать как пользователь Unix user_name прежде, чем принять любые соединения.

  4. Чтобы запустить сервер как данного пользователя автоматически в системное время запуска, определите имя пользователя, добавляя a user опция к [mysqld] группа /etc/my.cnf файл опции или my.cnf файл опции в каталоге данных сервера. Например:

    [mysqld]user=user_name

Если Ваша машина самого Unix не защищается, следует присвоить пароли MySQL root учетные записи в таблицах предоставления. Иначе, любой пользователь с учетной записью на той машине может выполнить mysql клиент с a --user=root опция и выполняет любую работу. (Это - хорошая идея присвоить пароли учетным записям MySQL в любом случае, но особенно так, когда другие учетные записи существуют на узле сервера.) См. Раздел 2.10, "Установка Постустановки и Тестирование".