safe_mysqld, оболочка mysqld
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] . См. раздел Файлы параметров "my.cnf".
Обратите внимание: все опции, которые вводятся в командной строке для safe_mysqld , передаются mysqld . Если требуется применить в safe_mysqld какие-либо опции, которые mysqld не поддерживает, эти опции нужно определить в файле опций.
Большинство опций safe_mysqld - те же, что и у mysqld . См. раздел Параметры командной строки mysqld .
Safe_mysqld поддерживает следующие опции:
--basedir=path
--core-file-size=#
Размер core -файла который может быть создан mysqld . Значение передается ulimit -c
--datadir=path
--defaults-extra-file=path
--defaults-file=path
--err-log=path
--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_directory shell> bin/safe_mysqld &
Если safe_mysqld не может запустить сервер, даже в том случае, когда он вызывается из инсталляционной директории MySQL, сценарий safe_mysqld можно модифицировать так, чтобы он использовал верный путь к mysqld и опции путей, которые являются правильными для вашей системы. Обратите внимание: если в будущем вы будете делать апгрейд MySQL, новая версия safe_mysqld будет записана поверх старой, поэтому нужно сделать копию отредактированной версии, которую вы сможете затем установить повторно.
1 2 3 4 5
8 8 8
| |