В MySQL 4.0 safe_mysqld был
переименован в mysqld_safe.
safe_mysqld - это сценарий, с
помощью которого рекомендуется
запускать демон mysqld на Unix.
safe_mysqld служит для
реализации неких дополнительных
функций безопасности для
mysqld, таких как
возможность перезапуска сервера
при обнаружении ошибки и записи в
журнал информации о процессе
работы mysqld.
Если не указаны опции
--mysqld=# или
--mysqld-version=#,
safe_mysqld будет
использовать исполняемый файл
mysqld-max, если последний
существует. Если mysqld-max
не существует, safe_mysqld
запустит mysqld. Это
позволяет легко выяснить, что даст
использование mysqld-max
вместо mysqld: просто
скопируйте mysqld-max поверх
mysqld, и он будет работать.
Как правило, редактировать
сценарий safe_mysqld не
следует, однако можно указать
опции для safe_mysqld,
поместив их в раздел
[safe_mysqld] файла
my.cnf. safe_mysqld
будет считывать все опции из
разделов файлов опций
[mysqld], [server] и
[safe_mysqld]. See
Раздел 4.1.2, «Файлы параметров my.cnf».
Обратите внимание: все опции,
которые вводятся в командной
строке для safe_mysqld,
передаются mysqld. Если
требуется применить в
safe_mysqld какие-либо опции,
которые mysqld не
поддерживает, эти опции нужно
определить в файле опций.
Большинство опций safe_mysqld
- те же, что и у mysqld. See
Раздел 4.1.1, «Параметры командной строки mysqld».
Safe_mysqld поддерживает
следующие опции:
--basedir=path,
--core-file-size=#
Размер core-файла
который может быть создан
mysqld. Значение
передается ulimit -c
--datadir=path,
--defaults-extra-file=path,
--defaults-file=path,
--err-log=path (устарело в 4.0;
Используйте --log-error вместо),
--log-error=path
Писать журнал ошибок в указанный файл. See Раздел 4.9.1, «Журнал ошибок».
--ledir=path
Путь к mysqld
--log=path,
--mysqld=mysqld-version
Имя версии mysqld,
которую вы хотите запустить в
директории ledir
--mysqld-version=version
То же, что и --mysqld=, но в
этой опции задается только
суффикс для mysqld.
Например, если используется
--mysqld-version=max,
safe_mysqld запустит версию
ledir/mysqld-max. Если задать
--mysqld-version без аргумента,
будет использоваться
ledir/mysqld.
--no-defaults,
--open-files-limit=#
Максимальное количество файлов,
которые могут быть открыты
mysqld. Значение
передается ulimit -n.
Обратите внимание: чтобы эта
опция работала корректно,
необходимо запустить
safe_mysqld от пользователя
root!
--pid-file=path, --port=#
, --socket=path,
--timezone=#
Устанавливает переменную
часового пояса (TZ) в
значение, передаваемое в этом
параметре.
--user=#
Сценарий safe_mysqld написан
таким образом, чтобы можно было
запустить сервер,
инсталлированный как из исходного
кода, так и из бинарной поставки
MySQL, даже если компоненты сервера, в
зависимости от используемой
инсталляции, будут размещены
несколько по-другому. Для
safe_mysqld требуется
выполнение одного из следующих
условий:
Сервер и базы данных можно
обнаружить относительно
каталога, в котором вызывается
safe_mysqld.
safe_mysqld ищет в своей
рабочей директории bin
и data (для бинарных
дистрибутивов) или
libexec и var
(для дистрибутивов с исходным
кодом). Это условие должно
выполняться, если
safe_mysqld запускается из
директории, в которую
инсталлирован MySQL (например
/usr/local/mysql для
бинарного дистрибутива).
Если сервер и базы данных не
могут быть найдены относительно
рабочей директории,
safe_mysqld пытается найти
их по абсолютным путям. Типичные
местоположения -
/usr/local/libexec и
/usr/local/var.
Действительные местоположения
определяются при создании
дистрибутива, из которого
запускается safe_mysqld.
Они должны быть корректными,
если MySQL был инсталлирован в
стандартное местоположение.
Поскольку safe_mysqld будет
пытаться найти сервер и базы
данных относительно собственной
рабочей директории, можно
инсталлировать двоичный
дистрибутив MySQL куда угодно, при
условии, что safe_mysqld будет
запускаться из директории, в
которой установлен MySQL:
shell>cd mysql_installation_directoryshell>bin/safe_mysqld &
Если safe_mysqld не может
запустить сервер, даже в том
случае, когда он вызывается из
инсталляционной директории MySQL,
сценарий safe_mysqld можно
модифицировать так, чтобы он
использовал верный путь к
mysqld и опции путей,
которые являются правильными для
вашей системы. Обратите внимание:
если в будущем вы будете делать
апгрейд MySQL, новая версия
safe_mysqld будет записана
поверх старой, поэтому нужно
сделать копию отредактированной
версии, которую вы сможете затем
установить повторно.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.
© 1995-2005 MySQL AB. All rights reserved.
