7.1.7 Параметры командной строки сервера
При запуске сервера mysqld вы можете указать параметры программы, используя любой из методов, описанных в разделе 6.2.2 «Указание параметров программы». Наиболее распространённые методы — это предоставление параметров в файле параметров или в командной строке. Однако в большинстве случаев желательно, чтобы сервер каждый раз использовал одни и те же параметры. Лучший способ гарантировать это — перечислить их в файле параметров. См. раздел 6.2.2.2 «Использование файлов параметров». В этом разделе также описывается формат и синтаксис файлов параметров.
mysqld считывает параметры из групп [mysqld] и [server]. mysqld_safe считывает параметры из групп [mysqld], [server], [mysqld_safe] и [safe_mysqld]. mysql.server считывает параметры из групп [mysqld] и [mysql.server].
mysqld принимает множество параметров командной строки. Для краткого обзора выполните следующую команду:
mysqld --help
Для просмотра полного списка используйте эту команду:
mysqld --verbose --help
Некоторые из элементов списка фактически являются системными переменными, которые можно установить при запуске сервера. Эти переменные можно отобразить во время работы, используя оператор SHOW VARIABLES. Некоторые элементы, отображаемые командой mysqld, не отображаются в выводе SHOW
VARIABLES; это связано с тем, что они являются только параметрами, а не системными переменными.
Следующий список показывает некоторые из наиболее распространенных параметров сервера. Дополнительные параметры описаны в других разделах:
Параметры, влияющие на безопасность: см. раздел 8.1.4 «Параметры и переменные mysqld, связанные с безопасностью».
Параметры, связанные с SSL: см. параметры командной строки для защищенных соединений.
Параметры управления двоичным журналом: см. раздел 7.4.4 «Двоичный журнал».
Параметры, связанные с репликацией: см. раздел 19.1.6 «Параметры и переменные репликации и двоичного логирования».
Параметры для загрузки плагинов, таких как подключаемые движки хранения: см. раздел 7.6.1 «Установка и удаление плагинов».
Параметры, специфичные для конкретных движков хранения: см. раздел 17.14 «Параметры запуска и системные переменные InnoDB» и раздел 18.2.1 «Параметры запуска MyISAM».
Некоторые параметры контролируют размер буферов или кэшей. Для данного буфера серверу может потребоваться выделить внутренние структуры данных. Эти структуры, как правило, выделяются из общей памяти, выделенной буферу, а объем необходимого пространства может зависеть от платформы. Это означает, что когда вы присваиваете значение параметру, который контролирует размер буфера, фактически доступное количество памяти может отличаться от заданного значения. В некоторых случаях оно может быть меньше заданного значения. Также возможно, что сервер скорректирует значение вверх. Например, если вы присваиваете значение 0 параметру, для которого минимальное значение равно 1024, сервер устанавливает значение в 1024.
Значения для размеров буферов, длин и размеров стека указываются в байтах, если не указано иное.
Некоторые параметры принимают значения имен файлов. Если значение является относительным именем файла, по умолчанию используется каталог данных, если не указано иное. Чтобы явно указать расположение, используйте абсолютное имя файла. Предположим, что каталог данных — /var/mysql/data. Если параметр, принимающий значение имени файла, задан как относительное имя файла, он находится в /var/mysql/data. Если значение является абсолютным именем файла, его расположение задаётся этим именем файла.
Вы также можете установить значения системных переменных сервера при запуске сервера, используя имена переменных в качестве параметров. Чтобы присвоить значение системной переменной сервера, используйте параметр вида --. Например, var_name=value--sort_buffer_size=384M устанавливает переменную sort_buffer_size со значением 384 МБ.
При присвоении значения переменной MySQL может автоматически скорректировать значение, чтобы оно оставалось в заданном диапазоне, или скорректировать значение до ближайшего допустимого значения, если разрешены только определённые значения.
Чтобы ограничить максимальное значение, которое может быть установлено для системной переменной во время выполнения с помощью оператора SET, укажите это максимальное значение, используя параметр вида --maximum- при запуске сервера.var_name=value
Вы можете изменить значения большинства системных переменных во время выполнения с помощью оператора SET. См. раздел 15.7.6.1 «Синтаксис SET для присваивания переменных».
Раздел 7.1.8 «Системные переменные сервера» содержит полное описание всех переменных и дополнительную информацию об их установке при запуске сервера и во время выполнения. Информацию о изменении системных переменных см. в разделе 7.1.1 «Настройка сервера».
-
--help,-?Формат командной строки --helpОтобразить краткое сообщение справки и выйти. Используйте оба параметра
--verboseи--help, чтобы увидеть полное сообщение. -
Формат командной строки --allow-suspicious-udfs[={OFF|ON}]Тип Булево Значение по умолчанию OFFЭтот параметр управляет тем, могут ли загружаться загружаемые функции, у которых есть только символ
xxxдля основной функции. По умолчанию параметр выключен, и загружаться могут только загружаемые функции, у которых есть как минимум один вспомогательный символ; это предотвращает попытки загрузки функций из файлов общих объектов, отличных от тех, которые содержат законные функции. См. Меры предосторожности по безопасности загружаемых функций. -
Формат командной строки --ansiИспользовать стандартный (ANSI) синтаксис SQL вместо синтаксиса MySQL. Для более точного управления режимом SQL сервера используйте параметр
--sql-modeвместо этого. См. Раздел 1.7, «Соответствие MySQL стандартам» и Раздел 7.1.11, «Режимы SQL сервера». -
--basedir=,dir_name-bdir_nameФормат командной строки --basedir=dir_nameПеременная системы basedirОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Имя каталога Значение по умолчанию parent of mysqld installation directoryПуть к каталогу установки MySQL. Этот параметр устанавливает переменную системы
basedir.Исполняемый файл сервера определяет свой полный путь при запуске и использует родительский каталог, в котором он находится, в качестве значения по умолчанию
basedir. Это, в свою очередь, позволяет серверу использовать этоbasedirпри поиске информации, связанной с сервером, например, каталогаshare, содержащего сообщения об ошибках. -
--chroot=,dir_name-rdir_nameФормат командной строки --chroot=dir_nameТип Имя каталога Поместить сервер mysqld в закрытую среду во время запуска, используя системный вызов
chroot(). Это рекомендуемая мера безопасности. Использование этого параметра несколько ограничиваетLOAD DATAиSELECT ... INTO OUTFILE. -
Формат командной строки --consoleЗависит от платформы Windows (Только Windows.) Задает, что местом назначения журнала ошибок по умолчанию будет консоль. Это влияет на потоки логирования, которые основывают свое место назначения на значения по умолчанию. См. Раздел 7.4.2, «Журнал ошибок». mysqld не закрывает окно консоли, если используется этот параметр.
--consoleимеет приоритет над--log-error, если оба указаны. -
Формат командной строки --core-fileПри использовании этого параметра, если mysqld завершится аварийно, создается файл core; аргументы не нужны (и не принимаются). Имя и местоположение файла core зависят от системы. В Linux файл core с именем
core.создается в текущем рабочем каталоге процесса, который для mysqld — это каталог данных.pidpidпредставляет собой идентификатор процесса серверного процесса. В macOS файл core с именемcore.создается в каталогеpid/cores. В Solaris используйте команду coreadm для указания места сохранения файла core и его имени.Для некоторых систем, чтобы получить файл core, также необходимо указать параметр
--core-file-sizeдля mysqld_safe. См. Раздел 6.3.2, «mysqld_safe — Скрипт запуска сервера MySQL». На некоторых системах, таких как Solaris, вы не получите файл core, если также используете параметр--user. Могут быть дополнительные ограничения или ограничения. Например, может потребоваться выполнить ulimit -c unlimited перед запуском сервера. Обратитесь к документации вашей системы.Переменная
innodb_buffer_pool_in_core_fileможет использоваться для уменьшения размера файлов core на операционных системах, которые поддерживают эту функцию. Дополнительную информацию см. в Разделе 17.8.3.7, «Исключение или включение страниц буфера пула в файлы core». -
--daemonize,-DФормат командной строки --daemonize[={OFF|ON}]Тип Булево Значение по умолчанию OFFЭтот параметр заставляет сервер работать как традиционный, порождающий демон, что позволяет ему работать с операционными системами, которые используют systemd для управления процессами. Дополнительную информацию см. в Разделе 2.5.9, «Управление сервером MySQL с помощью systemd».
--daemonizeвзаимно исключает--initializeи--initialize-insecure.Если сервер запущен с помощью параметра
--daemonizeи не подключен к устройству tty, по умолчанию используется вариант ведения журнала ошибок--log-error="", чтобы направить вывод ошибок в файл журнала по умолчанию.-Dявляется синонимом для--daemonize. -
--datadir=,dir_name-hdir_nameФормат командной строки --datadir=dir_nameПеременная системы datadirОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Имя каталога Путь к каталогу данных сервера MySQL. Этот параметр устанавливает переменную системы
datadir. См. описание этой переменной.
-
--debug[=,debug_options]-# [debug_options]Формат командной строки --debug[=debug_options]Системная переменная debugОбласть действия Глобальная, сеансовая Динамическая Да SET_VARПрименимо ли подсказкаНет Тип Строка Значение по умолчанию (Unix) d:t:i:o,/tmp/mysqld.traceЗначение по умолчанию (Windows) d:t:i:O,\mysqld.traceЕсли MySQL настроен с помощью опции
-DWITH_DEBUG=1CMake, вы можете использовать эту опцию, чтобы получить файл трассировки того, что делает mysqld. Типичная строкаdebug_optionsимеет видd:t:o,. Значение по умолчанию —file_named:t:i:o,/tmp/mysqld.traceна Unix иd:t:i:O,\mysqld.traceна Windows.Использование
-DWITH_DEBUG=1для настройки MySQL с поддержкой отладки позволяет использовать опцию--debug="d,parser_debug"при запуске сервера. Это заставляет парсер Bison, который используется для обработки SQL-запросов, выводить трассировку парсера в стандартный вывод ошибок сервера. Обычно этот вывод записывается в журнал ошибок.Эту опцию можно указывать несколько раз. Значения, начинающиеся с
+или-, добавляются к или вычитаются из предыдущего значения. Например,--debug=T--debug=+Pустанавливает значение вP:T.Для получения дополнительной информации см. Раздел 7.9.4, «Пакет DBUG».
-
Формат командной строки --debug-sync-timeout[=#]Тип Целое число Управляет включением функции Debug Sync для тестирования и отладки. Для использования Debug Sync необходимо, чтобы MySQL был настроен с опцией
-DWITH_DEBUG=ONCMake (см. Раздел 2.8.7, «Опции конфигурации исходного кода MySQL»); в противном случае эта опция недоступна. Значение опции представляет собой таймаут в секундах. Значение по умолчанию равно 0, что отключает Debug Sync. Для его включения укажите значение больше 0; это значение также становится значением таймаута по умолчанию для отдельных точек синхронизации. Если опция указана без значения, таймаут устанавливается в 300 секунд.Описание функции Debug Sync и как использовать точки синхронизации см. в MySQL Internals: Тестовая синхронизация.
-
Формат командной строки --default-time-zone=nameТип Строка Устанавливает временную зону сервера по умолчанию. Эта опция устанавливает глобальную системную переменную
time_zone. Если эта опция не указана, временная зона по умолчанию совпадает с системной временной зоной (определяемой значением системной переменнойsystem_time_zone).Переменная
system_time_zoneотличается отtime_zone. Хотя они могут иметь одинаковое значение, последняя переменная используется для инициализации временной зоны для каждого подключенного клиента. См. Раздел 7.1.15, «Поддержка временных зон в MySQL сервере». -
--defaults-extra-file=file_nameСчитывает этот файл опций после глобального файла опций, но (на Unix) перед файлом опций пользователя. Если файл не существует или недоступен, возникает ошибка. Если
file_nameне является абсолютным именем пути, оно интерпретируется относительно текущей директории. Эта опция должна быть первой в командной строке, если используется.Дополнительную информацию об этой и других опциях файлов опций см. в Разделе 6.2.2.3, «Опции командной строки, влияющие на обработку файла опций».
-
Считывает только указанный файл опций. Если файл не существует или недоступен, возникает ошибка. Если
file_nameне является абсолютным именем пути, оно интерпретируется относительно текущей директории.Исключение: даже с
--defaults-file, mysqld читаетmysqld-auto.cnf.ПримечаниеЭта опция должна быть первой в командной строке, если используется, за исключением случаев, когда сервер запускается с опциями
--defaults-fileи--install(или--install-manual), в этом случае--install(или--install-manual) должны быть первыми.Дополнительную информацию об этой и других опциях файлов опций см. в Разделе 6.2.2.3, «Опции командной строки, влияющие на обработку файла опций».
-
Читает не только обычные группы опций, но и группы с обычными именами и суффиксом
str. Например, mysqld обычно читает группу[mysqld]. Если эта опция указана как--defaults-group-suffix=_other, mysqld также читает группу[mysqld_other].Дополнительную информацию об этой и других опциях файлов опций см. в Разделе 6.2.2.3, «Опции командной строки, влияющие на обработку файла опций».
-
--early-plugin-load=plugin_listФормат командной строки --early-plugin-load=plugin_listТип Строка Значение по умолчанию empty stringЭтот параметр сообщает серверу, какие плагины загрузить до загрузки обязательных встроенных плагинов и перед инициализацией движка хранения. Ранняя загрузка поддерживается только для плагинов, скомпилированных с
PLUGIN_OPT_ALLOW_EARLY. Если указано несколько параметров--early-plugin-load, применяется только последний.Значение параметра — список плагинов, разделённых точкой с запятой,
plugin_libraryиname=plugin_library. Каждаяplugin_library— имя библиотечного файла, содержащего код плагина, а каждаяname— имя загружаемого плагина. Если имя библиотеки плагина указано без предваряющего имени плагина, сервер загрузит все плагины в библиотеке. При наличии предваряющего имени плагина, сервер загрузит только указанный плагин из библиотеки. Сервер ищет файлы библиотек плагинов в каталоге, указанном переменной системыplugin_dir.Например, если плагины с именами
myplug1иmyplug2содержатся в библиотечных файлах плагиновmyplug1.soиmyplug2.so, используйте этот параметр для ранней загрузки плагинов:mysqld --early-plugin-load="myplug1=myplug1.so;myplug2=myplug2.so"
Значение аргумента заключено в кавычки, так как в противном случае некоторые интерпретаторы команд рассматривают точку с запятой (
;) как специальный символ. (Например, оболочки Unix обрабатывают её как разделитель команд.)Каждый указанный плагин загружается в начале работы только для одного запуска mysqld. После перезапуска плагин не загружается в начале, если параметр
--early-plugin-loadне указан повторно.Если сервер запущен с использованием
--initializeили--initialize-insecure, плагины, указанные в--early-plugin-load, не загружаются.Если сервер запущен с
--help, плагины, указанные в--early-plugin-load, загружаются, но не инициализируются. Это поведение гарантирует, что параметры плагинов отображаются в сообщении справки.InnoDBшифрование табличного пространства данных зависит от MySQL Keyring для управления ключами шифрования, и плагин keyring должен быть загружен до инициализации движка хранения для облегченияInnoDBвосстановления зашифрованных таблиц. Например, администраторы, которые хотят загрузить плагинkeyring_okvпри запуске, должны использовать--early-plugin-loadс соответствующим значением параметра (например,keyring_okv.soна системах Unix и Unix-подобных системах илиkeyring_okv.dllна Windows).Сведения о
InnoDBшифровании табличного пространства данных см. в Разделе 17.13, «Шифрование данных InnoDB». Общие сведения о загрузке плагинов см. в Разделе 7.6.1, «Установка и удаление плагинов».ПримечаниеДля MySQL Keyring этот параметр используется только в случае, если хранилище ключей управляется плагином keyring. Если управление хранилищем ключей выполняется компонентом keyring, а не плагином, укажите загрузку компонента с помощью файла манифеста; см. Раздел 8.4.4.2, «Установка компонентов Keyring».
-
--exit-info[=,flags]-T [flags]Формат командной строки --exit-info[=flags]Тип Целое число Это битовая маска различных флагов, которые вы можете использовать для отладки сервера mysqld. Не используйте этот параметр, если вы не точно знаете, что он делает!
-
Формат командной строки --external-locking[={OFF|ON}]Тип Булево Значение по умолчанию OFFВключить внешнюю блокировку (системную блокировку), которая отключена по умолчанию. Если вы используете этот параметр на системе, на которой
lockdне работает полностью (например, Linux), сервер mysqld может легко попасть в тупиковую ситуацию.Чтобы отключить внешнюю блокировку явно, используйте
--skip-external-locking.Внешняя блокировка влияет только на доступ к таблицам
MyISAM. Более подробная информация, включая условия использования, см. в Разделе 10.11.5, «Внешняя блокировка». -
Формат командной строки --flush[={OFF|ON}]Переменная системы flushОбласть Глобальная Динамическая Да Применимо подсказка SET_VARНет Тип Булево Значение по умолчанию OFFПроизвести сброс (синхронизацию) всех изменений на диск после каждой SQL-команды. Обычно MySQL производит запись всех изменений на диск только после каждой SQL-команды и позволяет операционной системе выполнить синхронизацию на диск. См. Раздел B.3.3.3, «Что делать, если MySQL продолжает зависать».
ПримечаниеЕсли указан параметр
--flush, значениеflush_timeне имеет значения, и изменения вflush_timeне влияют на поведение сброса. -
Формат командной строки --gdb[={OFF|ON}]Тип Булево Значение по умолчанию OFFУстановить обработчик прерываний для
SIGINT(необходимый для остановки mysqld с помощью^Cдля установки точек останова) и отключить отслеживание стека и обработку файлов core. См. Раздел 7.9.1.4, «Отладка mysqld в gdb».В Windows этот параметр также подавляет форкинг, используемый для реализации команды
RESTART: форкинг позволяет одному процессу действовать в качестве монитора для другого, который выполняет роль сервера. Однако форкинг усложняет определение процесса сервера для подключения к нему во время отладки, поэтому запуск сервера с параметром--gdbподавляет форкинг. Для сервера, запущенного с этим параметром,RESTARTпросто завершает работу и не перезапускается.В неотладочных настройках может быть использован параметр
--no-monitorдля подавления форкинга мониторингового процесса.
-
--initialize,-IФормат командной строки --initialize[={OFF|ON}]Тип Булево Значение по умолчанию OFFЭтот параметр используется для инициализации установки MySQL, создавая каталог данных и заполняя таблицы в схеме системы
mysql. Для получения дополнительной информации см. Раздел 2.9.1, «Инициализация каталога данных».Этот параметр ограничивает влияние или несовместим с рядом других параметров запуска сервера MySQL. Некоторые из наиболее распространённых проблем этого типа приведены здесь:
При инициализации каталога данных с помощью
--initialize, мы настоятельно рекомендуем указать только дополнительные параметры, кроме--datadir, других параметров для установки расположения каталога, таких как--basedir, и, возможно,--user, если это необходимо. Параметры для работающего сервера MySQL могут быть указаны при его запуске после завершения инициализации и завершения работы mysqld. Это также относится к использованию--initialize-insecureвместо--initialize.При запуске сервера с помощью
--initializeнекоторые функции недоступны, что ограничивает утверждения, разрешённые в любом файле, имя которого указано в системной переменнойinit_file. Дополнительную информацию см. в описании этой переменной. Кроме того, системная переменнаяdisabled_storage_enginesне имеет эффекта.Параметр
--ndbclusterигнорируется при использовании совместно с--initialize.--initializeвзаимоисключает и--daemonize.
Пункты в предыдущем списке также применяются при инициализации сервера с помощью параметра
--initialize-insecure. -
Формат командной строки --initialize-insecure[={OFF|ON}]Тип Булево Значение по умолчанию OFFЭтот параметр используется для инициализации установки MySQL, создавая каталог данных и заполняя таблицы в схеме системы
mysql. Этот параметр подразумевает--initialize, и те же ограничения и ограничения применяются; для получения дополнительной информации см. описание этого параметра и Раздел 2.9.1, «Инициализация каталога данных».ПредупреждениеЭтот параметр создаёт пользователя MySQL
rootс пустым паролем, что небезопасно. По этой причине не используйте его в рабочей среде без ручного задания этого пароля. См. Назначение пароля root после инициализации для получения информации об этом. -
--innodb-xxxУстановите параметр для движка хранения
InnoDB. ПараметрыInnoDBперечислены в Разделе 17.14, «Параметры запуска InnoDB и системные переменные». -
Формат командной строки --install [service_name]Специфично для платформы Windows (Только для Windows) Установить сервер в качестве службы Windows, которая запускается автоматически при запуске Windows. Имя службы по умолчанию —
MySQL, если значениеservice_nameне указано. Для получения дополнительной информации см. Раздел 2.3.3.8, «Запуск MySQL в качестве службы Windows».ПримечаниеЕсли сервер запускается с параметрами
--defaults-fileи--install, то--installдолжен быть первым. -
--install-manual [service_name]Формат командной строки --install-manual [service_name]Специфично для платформы Windows (Только для Windows) Установить сервер в качестве службы Windows, которая должна запускаться вручную. Она не запускается автоматически при запуске Windows. Имя службы по умолчанию —
MySQL, если значениеservice_nameне указано. Для получения дополнительной информации см. Раздел 2.3.3.8, «Запуск MySQL в качестве службы Windows».ПримечаниеЕсли сервер запускается с параметрами
--defaults-fileи--install-manual, то--install-manualдолжен быть первым.
-
Формат командной строки --lc-messages-dir=dir_nameСистемная переменная lc_messages_dirОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Имя каталога Каталог, в котором находятся сообщения об ошибках. Сервер использует это значение вместе со значением
--lc-messages, чтобы определить расположение файла сообщения об ошибке. См. Раздел 12.12, «Настройка языка сообщений об ошибках». -
Формат командной строки --local-service(Только для Windows) Параметр
--local-service, следующий за именем службы, заставляет сервер работать с учетной записьюLocalServiceWindows, обладающей ограниченными системными привилегиями. Если после имени службы указаны как--defaults-file, так и--local-service, они могут быть в любом порядке. См. Раздел 2.3.3.8, «Запуск MySQL как службы Windows». -
Формат командной строки --log-diagnostic[=file_name]Системная переменная log_diagnosticОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Имя файла Установите имя файла диагностического журнала в это значение с добавленным
.diag, если сервер запущен с--log-diagnostic-enable; в противном случае не имеет эффекта. Имя файла по умолчанию для диагностического журнала —.host_name.diagТолько для внутреннего использования. Доступно только если сервер был скомпилирован с использованием
-DWITH_LOG_DIAGNOSTIC. -
--log-diagnostic-enable[=value]Формат командной строки --log-diagnostic-name[=true|false]Системная переменная log_diagnostic_enableОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Булево Значение по умолчанию falseВключить диагностическое протоколирование.
Только для внутреннего использования. Доступно только если сервер был скомпилирован с использованием
-DWITH_LOG_DIAGNOSTIC. -
Формат командной строки --log-error[=file_name]Системная переменная log_errorОбласть действия Глобальная Динамическая Нет SET_VARПрименяется подсказкаНет Тип Имя файла Установите в качестве целевого файла журнала ошибок указанный файл. Это влияет на стоки журнала, которые базирующие свои целевые пункты вывода на целевой пункт вывода по умолчанию. См. Раздел 7.4.2, «Журнал ошибок».
Если параметр не указывает файл, целевой пункт вывода по умолчанию для журналов ошибок в системах Unix и Unix-подобных системах — файл с именем
в каталоге данных. Целевой пункт вывода по умолчанию в Windows такой же, если не задан параметрhost_name.err--pid-file. В этом случае имя файла — имя файла PID с добавленным.errв каталоге данных.Если параметр указывает файл, целевой пункт вывода по умолчанию — этот файл (с добавленным
.errсуффиксом, если имя не содержит суффикса), расположенный в каталоге данных, если не указан абсолютный путь, указывающий на другое расположение.Если вывод в журнал ошибок не может быть перенаправлен в файл журнала ошибок, возникает ошибка, и запуск завершается неудачно.
В Windows параметр
--consoleимеет приоритет перед--log-error, если оба заданы. В этом случае целевой пункт вывода журнала ошибок — консоль, а не файл. -
Формат командной строки --log-isam[=file_name]Тип Имя файла Записывает в этот файл все изменения
MyISAM(используется только при отладкеMyISAM). -
Формат командной строки --log-raw[={OFF|ON}]Системная переменная log_rawОбласть действия Глобальная Динамическая Да SET_VARПрименяется подсказкаНет Тип Булево Значение по умолчанию OFFПароли в некоторых операторах, записываемые в общий журнал запросов, журнал медленных запросов и двоичный журнал, переписываются сервером, чтобы не появляться в текстовом формате. Переписывание паролей можно отключить для общего журнала запросов, запустив сервер с параметром
--log-raw. Этот параметр может быть полезен для диагностики, чтобы увидеть точный текст операторов, как они получены сервером, но по соображениям безопасности не рекомендуется для использования в рабочей среде.Если установлен плагин переписывания запросов, параметр
--log-rawвлияет на протоколирование операторов следующим образом:Более подробная информация приведена в Разделе 8.1.2.3, «Пароли и протоколирование».
-
Формат командной строки --log-short-format[={OFF|ON}]Тип Булево Значение по умолчанию OFFПротоколировать меньше информации в журнал медленных запросов, если он был активирован.
-
Формат командной строки --log-tc=file_nameТип Имя файла Значение по умолчанию tc.logИмя файла журнала координатора транзакций с отображением в памяти (для транзакций XA, которые влияют на несколько движков хранилища, когда двоичный журнал отключен). Имя по умолчанию —
tc.log. Файл создается в каталоге данных, если не задан полный путь. Этот параметр не используется. -
Формат командной строки --log-tc-size=#Тип Целое число Значение по умолчанию 6 * page sizeМинимальное значение 6 * page sizeМаксимальное значение (64-разрядные платформы) 18446744073709551615Максимальное значение (32-разрядные платформы) 4294967295Размер файла журнала координатора транзакций с отображением в памяти в байтах. Значения по умолчанию и минимальное — 6 раз размер страницы, а значение должно быть кратно размеру страницы.
-
Формат командной строки --memlock[={OFF|ON}]Тип Булево Значение по умолчанию OFFЗаблокировать процесс mysqld в оперативной памяти. Эта опция может помочь, если у вас проблема, когда операционная система заставляет mysqld использовать подкачку на диск.
--memlockработает на системах, поддерживающих системный вызовmlockall(); это включает Solaris, большинство дистрибутивов Linux, использующих ядро 2.4 или более позднюю версию, и, возможно, другие Unix-системы. В системах Linux вы можете определить, поддерживается лиmlockall()(а значит, и эта опция) путем проверки, определен ли он в системном файлеmman.h, например так:$>
grep mlockall /usr/include/sys/mman.hЕсли
mlockall()поддерживается, в выводе предыдущей команды вы должны увидеть что-то вроде следующего:extern int mlockall (int __flags) __THROW;
ВажноИспользование этой опции может потребовать запуска сервера как
root, что по соображениям безопасности обычно не рекомендуется. См. Раздел 8.1.5, «Как запустить MySQL как обычный пользователь».В Linux и, возможно, в других системах, можно избежать необходимости запуска сервера как
root, изменив файлlimits.conf. См. примечания относительно ограничения memlock в Разделе 10.12.3.3, «Включение поддержки больших страниц».Не используйте эту опцию в системах, которые не поддерживают системный вызов
mlockall(); в противном случае mysqld с большой вероятностью завершится при попытке запуска. -
Формат командной строки --myisam-block-size=#Тип Целое число Значение по умолчанию 1024Минимальное значение 1024Максимальное значение 16384Размер блока, используемый для страниц индексов
MyISAM. -
Не читать файлы параметров. Если запуск программы терпит неудачу из-за чтения неизвестных параметров из файла параметров,
--no-defaultsможно использовать для предотвращения их чтения. Это должна быть первая опция в командной строке, если она используется.Дополнительную информацию об этой и других опциях, влияющих на обработку файлов параметров, см. в Разделе 6.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».
-
Формат командной строки --no-monitor[={OFF|ON}]Специфично для платформы Windows Тип Булево Значение по умолчанию OFF(Только Windows). Эта опция подавляет вилку, используемую для реализации оператора
RESTART: вилка позволяет одному процессу действовать как монитору другого, который выступает в роли сервера. Для сервера, запущенного с этой опцией,RESTARTпросто завершается и не перезапускается. -
--performance-schema-xxxНастройка параметра Performance Schema. Подробности см. в Разделе 29.14, «Параметры командной строки Performance Schema».
-
Формат командной строки --plugin-load=plugin_listТип Строка Эта опция сообщает серверу загрузить указанные плагины при запуске. Если задано несколько опций
--plugin-load, применяется только последняя. Дополнительные плагины для загрузки можно указать с помощью опций--plugin-load-add.Значение опции — это список, разделенный точкой с запятой,
plugin_libraryиname=plugin_libraryзначений. Каждоеplugin_library— это имя библиотечного файла, содержащего код плагина, а каждоеname— имя плагина для загрузки. Если имя библиотеки плагина указано без предшествующего имени плагина, сервер загружает все плагины в библиотеке. При наличии предшествующего имени плагина сервер загружает только указанный плагин из библиотеки. Сервер ищет файлы библиотек плагинов в каталоге, указанном переменной системыplugin_dir.Например, если плагины с именами
myplug1иmyplug2содержатся в библиотечных файлах плагиновmyplug1.soиmyplug2.so, используйте эту опцию для ранней загрузки плагинов:mysqld --plugin-load="myplug1=myplug1.so;myplug2=myplug2.so"
Кавычки окружают значение аргумента, так как в противном случае некоторые интерпретаторы команд воспринимают точку с запятой (
;) как специальный символ. (Например, оболочки Unix воспринимают ее как разделитель команд.)Каждый указанный плагин загружается только для одного вызова mysqld. После перезапуска плагин не загружается, если
--plugin-loadне используется повторно. Это отличается отINSTALL PLUGIN, который добавляет запись в таблицуmysql.plugins, чтобы плагин загружался при каждом нормальном запуске сервера.Во время обычной последовательности запуска сервер определяет, какие плагины загружать, считывая таблицу системных переменных
mysql.plugins. Если сервер запускается с опцией--skip-grant-tables, плагины, зарегистрированные в таблицеmysql.plugins, не загружаются и недоступны.--plugin-loadпозволяет загружать плагины даже при указании--skip-grant-tables.--plugin-loadтакже позволяет загружать плагины при запуске, которые нельзя загрузить во время выполнения.Эта опция не устанавливает соответствующую системную переменную. Вывод
SHOW PLUGINSпредоставляет информацию о загруженных плагинах. Более подробная информация доступна в таблице схемы информацииPLUGINS. См. Раздел 7.6.2, «Получение информации о плагинах сервера».Дополнительную информацию о загрузке плагинов см. в Разделе 7.6.1, «Установка и удаление плагинов».
-
Формат командной строки --plugin-load-add=plugin_listТип Строка Этот параметр дополняет параметр
--plugin-load.--plugin-load-addдобавляет один или несколько плагинов к набору плагинов, которые должны быть загружены при запуске. Формат аргумента такой же, как и для--plugin-load.--plugin-load-addможно использовать для того, чтобы не указывать большой набор плагинов в виде одного длинного и неудобного аргумента--plugin-load.--plugin-load-addможно использовать в отсутствие--plugin-load, но любое вхождение--plugin-load-add, которое появляется до--plugin-load, не имеет эффекта, потому что--plugin-loadсбрасывает набор плагинов для загрузки. Другими словами, эти параметры:--plugin-load=x --plugin-load-add=y
эквивалентны этому параметру:
--plugin-load="x;y"
Но эти параметры:
--plugin-load-add=y --plugin-load=x
эквивалентны этому параметру:
--plugin-load=x
Этот параметр не устанавливает соответствующую системную переменную. Вывод
SHOW PLUGINSсодержит информацию о загруженных плагинах. Более подробная информация может быть найдена в таблице схемы данныхPLUGINS. См. Раздел 7.6.2, «Получение информации о серверных плагинах».Дополнительную информацию о загрузке плагинов см. в Разделе 7.6.1, «Установка и удаление плагинов».
-
Указывает параметр, относящийся к серверному плагину. Например, многие движки хранения данных могут быть построены как плагины, и для таких движков параметры для них могут быть указаны с префиксом
--plugin. Таким образом, параметр--innodb-file-per-tableдляInnoDBможет быть указан как--plugin-innodb-file-per-table.Для логических параметров, которые могут быть включены или выключены, также поддерживаются префикс
--skipи другие альтернативные форматы (см. Раздел 6.2.2.4, «Модификаторы параметров программы»). Например,--skip-plugin-innodb-file-per-tableотключаетinnodb-file-per-table.Причина использования префикса
--pluginзаключается в том, что он позволяет однозначно указать параметры плагинов, если возникает конфликт имен с встроенным параметром сервера. Например, если автор плагина назовет плагин “sql” и реализует параметр “mode”, имя параметра может быть--sql-mode, что приведет к конфликту со встроенным параметром с таким же именем. В таких случаях ссылки на конфликтующее имя разрешаются в пользу встроенного параметра. Чтобы избежать неоднозначности, пользователи могут указать параметр плагина как--plugin-sql-mode. Рекомендуется использовать префикс--pluginдля параметров плагинов, чтобы избежать любых вопросов неоднозначности. -
--port=,port_num-Pport_numФормат командной строки --port=port_numСистемная переменная portОбласть действия Глобальная Динамический Нет SET_VARПрименяется подсказкаНет Тип Целое число Значение по умолчанию 3306Минимальное значение 0Максимальное значение 65535Номер порта, используемый для прослушивания подключений TCP/IP. В системах Unix и Unix-подобных системах номер порта должен быть 1024 или выше, если сервер не запущен пользователем операционной системы
root. Установка этого параметра в значение 0 приводит к использованию значения по умолчанию. -
Формат командной строки --port-open-timeout=#Тип Целое число Значение по умолчанию 0В некоторых системах, когда сервер останавливается, TCP/IP порт может не стать доступным сразу. Если сервер перезапускается сразу после этого, его попытка открыть порт может завершиться неудачей. Этот параметр указывает, сколько секунд сервер должен ждать, пока TCP/IP порт не освободится, если он не может быть открыт. По умолчанию ожидание не происходит.
-
Выводит имя программы и все параметры, которые она получает из файлов параметров. Значения паролей маскируются. Этот параметр должен быть первым в командной строке, если используется, за исключением случаев, когда он может быть использован сразу после
--defaults-fileили--defaults-extra-file.Дополнительную информацию об этом и других параметрах файлов параметров см. в Разделе 6.2.2.3, «Параметры командной строки, влияющие на обработку файлов параметров».
-
Формат командной строки --remove [service_name]Специфично для платформы Windows (Только Windows) Удаляет службу MySQL Windows. Имя службы по умолчанию —
MySQL, если не указано значениеservice_name. Дополнительную информацию см. в Разделе 2.3.3.8, «Запуск MySQL в качестве службы Windows». -
Формат командной строки --safe-user-create[={OFF|ON}]Устарело Да Тип Булево Значение по умолчанию OFFЕсли этот параметр включен, пользователь не может создавать новых пользователей MySQL с помощью оператора
GRANT, если у пользователя нет привилегииINSERTдля системной таблицыmysql.userили любой колонки в таблице. Если вы хотите, чтобы пользователь мог создавать новых пользователей с правами, которые у него есть право предоставить, необходимо предоставить пользователю следующую привилегию:GRANT INSERT(user) ON mysql.user TO '
user_name'@'host_name';Это гарантирует, что пользователь не может напрямую изменять столбцы привилегий, а должен использовать оператор
GRANTдля предоставления привилегий другим пользователям.
-
Формат командной строки --skip-grant-tables[={OFF|ON}]Тип Булево Значение по умолчанию OFFЭтот параметр влияет на последовательность запуска сервера:
-
--skip-grant-tablesзаставляет сервер не читать таблицы разрешений в схемеmysqlсистемы, и, следовательно, запускаться без использования системы привилегий вообще. Это предоставляет любому пользователю с доступом к серверу неограниченный доступ ко всем базам данных.Поскольку запуск сервера с
--skip-grant-tablesотключает проверки аутентификации, сервер также отключает удалённые подключения в этом случае, включивskip_networking.Чтобы заставить сервер, запущенный с
--skip-grant-tables, загрузить таблицы разрешений во время выполнения, выполните операцию сброса привилегий, что можно сделать следующими способами:Выполните операцию MySQL
FLUSH PRIVILEGESпосле подключения к серверу.Выполните команду mysqladmin flush-privileges или mysqladmin reload из командной строки.
Очистка привилегий также может произойти неявно в результате других действий, выполненных после запуска, что заставляет сервер начать использовать таблицы разрешений. Например, сервер сбрасывает привилегии, если выполняет обновление во время последовательности запуска.
--skip-grant-tablesотключает отслеживание неудачных попыток входа и блокировку временных учётных записей, поскольку эти возможности зависят от таблиц разрешений. См. Раздел 8.2.15, «Управление паролями».-
--skip-grant-tablesзаставляет сервер не загружать определённые другие объекты, зарегистрированные в словаре данных или схемеmysqlсистемы:Планируемые события, установленные с помощью
CREATE EVENTи зарегистрированные в таблице словаря данныхevents.-
Плагины, установленные с помощью
INSTALL PLUGINи зарегистрированные в таблице системыmysql.plugin.Чтобы заставить загружать плагины даже при использовании
--skip-grant-tables, используйте параметр--plugin-loadили--plugin-load-add. Загружаемые функции, установленные с помощью
CREATE FUNCTIONи зарегистрированные в таблице системыmysql.func.
--skip-grant-tablesне подавляет загрузку компонентов во время запуска. --skip-grant-tablesзаставляет системную переменнуюdisabled_storage_enginesне иметь никакого эффекта.
-
-
Формат командной строки --skip-newУстаревший Да Этот параметр отключает (то, что раньше считалось) новые, потенциально небезопасные, поведения. Это приводит к таким настройкам:
delay_key_write=OFF,concurrent_insert=NEVER,automatic_sp_privileges=OFF. Он также заставляетOPTIMIZE TABLEотображаться какALTER TABLEдля типов хранилищ, для которыхOPTIMIZE TABLEне поддерживается.Этот параметр устарел и может быть удалён в будущей версии.
-
Формат командной строки --skip-show-databaseСистемная переменная skip_show_databaseОбласть действия Глобальная Динамичная Нет SET_VARПрименимоНет Тип Булево Значение по умолчанию OFFЭтот параметр устанавливает системную переменную
skip_show_database, которая определяет, кому разрешено использовать операторSHOW DATABASES. См. Раздел 7.1.8, «Системные переменные сервера». -
Формат командной строки --skip-stack-traceНе записывать трассировки стека. Этот параметр полезен, когда вы запускаете mysqld под отладчиком. На некоторых системах вам также необходимо использовать этот параметр для получения файла core. См. Раздел 7.9, «Отладка MySQL».
-
Формат командной строки --slow-start-timeout=#Тип Целое число Значение по умолчанию 15000Этот параметр контролирует таймаут запуска службы менеджером служб Windows. Значение является максимальным количеством миллисекунд, которое менеджер служб ждёт, прежде чем попытаться убить службу Windows во время запуска. Значение по умолчанию составляет 15000 (15 секунд). Если служба MySQL слишком долго запускается, вам может потребоваться увеличить это значение. Значение 0 означает отсутствие таймаута.
-
Формат командной строки --socket={file_name|pipe_name}Системная переменная socketОбласть действия Глобальная Динамичная Нет SET_VARПрименимоНет Тип Строка Значение по умолчанию (Windows) MySQLЗначение по умолчанию (Другие) /tmp/mysql.sockВ Unix эта опция указывает имя файла Unix-сокетa, который необходимо использовать при прослушивании локальных подключений. Значение по умолчанию —
/tmp/mysql.sock. Если этот параметр задан, сервер создаёт файл в каталоге данных, если не указан абсолютный путь к другому каталогу. В Windows опция указывает имя канала для прослушивания локальных подключений, использующих именованный канал. Значение по умолчанию —MySQL(регистр не важен).
-
--sql-mode=value[,value[,value...]]Формат командной строки --sql-mode=nameСистемная переменная sql_modeОбласть действия Глобальная, сеансовая Динамическая Да SET_VARПрименяется подсказкаДа Тип Множество Значение по умолчанию ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_ENGINE_SUBSTITUTIONДопустимые значения ALLOW_INVALID_DATESANSI_QUOTESERROR_FOR_DIVISION_BY_ZEROHIGH_NOT_PRECEDENCEIGNORE_SPACENO_AUTO_VALUE_ON_ZERONO_BACKSLASH_ESCAPESNO_DIR_IN_CREATENO_ENGINE_SUBSTITUTIONNO_UNSIGNED_SUBTRACTIONNO_ZERO_DATENO_ZERO_IN_DATEONLY_FULL_GROUP_BYPAD_CHAR_TO_FULL_LENGTHPIPES_AS_CONCATREAL_AS_FLOATSTRICT_ALL_TABLESSTRICT_TRANS_TABLESTIME_TRUNCATE_FRACTIONALУстановите режим SQL. См. Раздел 7.1.11, «Режимы SQL сервера».
ПримечаниеПрограммы установки MySQL могут настроить режим SQL во время процесса установки.
Если режим SQL отличается от значения по умолчанию или от ожидаемого, проверьте настройку в файле параметров, который сервер читает при запуске.
-
Формат командной строки --standaloneЗависимость от платформы Windows Доступно только в Windows; указывает MySQL-серверу не запускаться как служба.
-
Формат командной строки --super-large-pages[={OFF|ON}]Зависимость от платформы Solaris Тип Булево Значение по умолчанию OFFСтандартное использование больших страниц в MySQL пытается использовать максимальный поддерживаемый размер до 4 МБ. В Solaris функция «сверхбольшие страницы» позволяет использовать страницы размером до 256 МБ. Эта функция доступна для последних платформ SPARC. Ее можно включить или отключить, используя параметр
--super-large-pagesили--skip-super-large-pages. -
--symbolic-links,--skip-symbolic-linksФормат командной строки --symbolic-links[={OFF|ON}]Устарело Да Тип Булево Значение по умолчанию OFFВключить или отключить поддержку символических ссылок. В Unix включение символических ссылок означает, что вы можете связать файл индекса
MyISAMили файл данных с другой директорией с помощью параметраINDEX DIRECTORYилиDATA DIRECTORYоператораCREATE TABLE. Если вы удаляете или переименовываете таблицу, файлы, на которые указывают её символические ссылки, также будут удалены или переименованы. См. Раздел 10.12.2.2, «Использование символических ссылок для таблиц MyISAM в Unix».ПримечаниеПоддержка символических ссылок, наряду с параметром
--symbolic-links, который ее контролирует, устарела; ожидается, что она будет удалена в будущих версиях MySQL. Кроме того, параметр отключен по умолчанию. Связанная системная переменнаяhave_symlinkтакже устарела; ожидается, что она будет удалена в будущих версиях MySQL.Этот параметр не имеет смысла в Windows.
-
Формат командной строки --sysdate-is-now[={OFF|ON}]Тип Булево Значение по умолчанию OFFSYSDATE()по умолчанию возвращает время, в которое он выполняется, а не время, в которое начинается выполнение оператора, в котором он находится. Это отличается от поведенияNOW(). Этот параметр делаетSYSDATE()синонимом дляNOW(). Для получения информации о последствиях для двоичного протоколирования и репликации, см. описаниеSYSDATE()в Разделе 14.7, «Функции даты и времени» и дляSET TIMESTAMPв Разделе 7.1.8, «Системные переменные сервера». -
--tc-heuristic-recover={COMMIT|ROLLBACK}Формат командной строки --tc-heuristic-recover=nameТип Перечисление Значение по умолчанию OFFДопустимые значения OFFCOMMITROLLBACKРешение использовать эвристическую ручную реконструкцию.
Если указан параметр
--tc-heuristic-recover, сервер завершает работу независимо от успешности ручной эвристической реконструкции.На системах с несколькими движками хранения, способными к двухфазному подтверждению, параметр
ROLLBACKнебезопасен и приводит к остановке восстановления с ошибкой:[ERROR] --tc-heuristic-recover rollback strategy is not safe on systems with more than one 2-phase-commit-capable storage engine. Aborting crash recovery.
-
Формат командной строки --transaction-isolation=nameСистемная переменная transaction_isolationОбласть действия Глобальная, сеансовая Динамическая Да SET_VARПрименяется подсказкаНет Тип Перечисление Значение по умолчанию REPEATABLE-READДопустимые значения READ-UNCOMMITTEDREAD-COMMITTEDREPEATABLE-READSERIALIZABLEУстанавливает уровень изоляции транзакций по умолчанию. Значение
levelможет бытьREAD-UNCOMMITTED,READ-COMMITTED,REPEATABLE-READилиSERIALIZABLE. См. Раздел 15.3.7, «Оператор SET TRANSACTION».Уровень изоляции транзакций по умолчанию также может быть установлен во время выполнения с помощью оператора
SET TRANSACTIONили путем установки системной переменнойtransaction_isolation.
-
Формат командной строки --transaction-read-only[={OFF|ON}]Системная переменная transaction_read_onlyОбласть действия Глобальная, сеанс Динамическая Да Применяется подсказка SET_VARНет Тип Булево Значение по умолчанию OFFУстанавливает режим доступа по умолчанию для транзакции. По умолчанию режим только для чтения отключен, поэтому режим — чтение/запись.
Чтобы установить режим доступа по умолчанию для транзакции во время выполнения, используйте оператор
SET TRANSACTIONили установите системную переменнуюtransaction_read_only. См. раздел 15.3.7 «Оператор SET TRANSACTION». -
--tmpdir=,dir_name-tdir_nameФормат командной строки --tmpdir=dir_nameСистемная переменная tmpdirОбласть действия Глобальная Динамическая Нет Применяется подсказка SET_VARНет Тип Имя каталога Путь к каталогу для создания временных файлов. Это может быть полезно, если ваш каталог по умолчанию
/tmpнаходится на разделе, который слишком мал для временных таблиц. Этот параметр принимает несколько путей, которые используются по кругу. Пути должны быть разделены двоеточием (:) в Unix и точкой с запятой (;) в Windows.--tmpdirможет быть временным местоположением, например, каталогом на файловой системе с оперативной памятью или каталогом, очищаемым при перезапуске хоста сервера. Если сервер MySQL работает в качестве реплики, и вы используете временное расположение для--tmpdir, рассмотрите возможность установки другого временного каталога для реплики с помощью системной переменнойreplica_load_tmpdir. Для реплики временные файлы, используемые для репликации операторовLOAD DATA, хранятся в этом каталоге, поэтому с постоянным местоположением они могут сохраняться при перезагрузке машины, хотя репликация может теперь продолжаться после перезагрузки, если временные файлы были удалены.Более подробную информацию о расположении временных файлов см. в разделе B.3.3.5 «Где MySQL хранит временные файлы».
-
Формат командной строки --upgrade=valueТип Перечисление Значение по умолчанию AUTOДопустимые значения AUTONONEMINIMALFORCEЭтот параметр управляет тем, выполняет ли сервер автоматическое обновление при запуске и как. Автоматическое обновление включает два шага:
-
Шаг 1: Обновление словаря данных.
На этом шаге обновляются:
Таблицы словаря данных в схеме
mysql. Если фактическая версия словаря данных ниже текущей ожидаемой версии, сервер обновляет словарь данных. Если он не может этого сделать или ему в этом препятствуют, сервер не может запуститься.Схема Performance Schema и
INFORMATION_SCHEMA.
-
Шаг 2: Обновление сервера.
Этот шаг включает все остальные задачи обновления. Если данные существующей установки имеют более низкую версию MySQL, чем ожидается у сервера, она должна быть обновлена:
Системные таблицы в схеме
mysql(остальные таблицы, не относящиеся к словарю данных).Схема
sys.Схемы пользователей.
Подробности о шагах 1 и 2 обновления см. в разделе 3.4 «Что обновляет процесс обновления MySQL».
Допускаются следующие значения параметра
--upgrade:-
AUTOСервер выполняет автоматическое обновление всего, что обнаруживает устаревшим (шаги 1 и 2). Это действие по умолчанию, если параметр
--upgradeне указан явно. -
NONEСервер не выполняет автоматических шагов обновления во время процесса запуска (пропускает шаги 1 и 2). Поскольку это значение параметра предотвращает обновление словаря данных, сервер завершается с ошибкой, если обнаружен устаревший словарь данных:
[ERROR] [MY-013381] [Server] Server shutting down because upgrade is required, yet prohibited by the command line option '--upgrade=NONE'. [ERROR] [MY-010334] [Server] Failed to initialize DD Storage Engine [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
-
MINIMALПри необходимости сервер обновляет словарь данных, схему Performance Schema и
INFORMATION_SCHEMA(шаг 1). Обратите внимание, что после обновления с этим параметром Group Replication запуститься не удастся, так как системные таблицы, от которых зависят внутренние компоненты репликации, не обновляются, а в других областях также может наблюдаться снижение функциональности. -
FORCEПри необходимости сервер обновляет словарь данных, схему Performance Schema и
INFORMATION_SCHEMA(шаг 1). Кроме того, сервер принудительно обновляет все остальное (шаг 2). Ожидайте, что запуск сервера займет больше времени с этим параметром, поскольку сервер проверяет все объекты во всех схемах.FORCEполезно для принудительного выполнения действий шага 2, если сервер считает, что они не нужны. Например, вы можете полагать, что системная таблица отсутствует или повреждена и хотите принудительно выполнить её восстановление.
В следующей таблице обобщены действия сервера для каждого значения параметра.
Значение параметра Сервер выполняет шаг 1? Сервер выполняет шаг 2? AUTOПри необходимости При необходимости NONEНет Нет MINIMALПри необходимости Нет FORCEПри необходимости Да -
-
--user={,user_name|user_id}-u {user_name|user_id}Формат командной строки --user=nameТип Строка Запустить сервер mysqld как пользователя с именем
user_nameили числовым идентификатором пользователяuser_id. («Пользователь» в данном контексте относится к учётной записи входа в систему, а не к пользователю MySQL, указанному в таблицах разрешений.)Этот параметр является обязательным при запуске mysqld как
root. Сервер изменяет свой идентификатор пользователя во время последовательности запуска, заставляя его работать как этот конкретный пользователь, а не какroot. См. раздел 8.1.1 «Рекомендации по безопасности».Чтобы избежать возможной уязвимости, когда пользователь добавляет параметр
--user=rootв файлmy.cnf(что заставляет сервер работать какroot), mysqld использует только первый параметр--userи выводит предупреждение, если есть несколько параметров--user. Параметры в/etc/my.cnfи$MYSQL_HOME/my.cnfобрабатываются до параметров командной строки, поэтому рекомендуется поместить параметр--userв/etc/my.cnfи указать значение отличное отroot. Параметр в/etc/my.cnfнаходится перед другими параметрами--user, что гарантирует, что сервер работает как пользователь, отличный отroot, и что выводится предупреждение, если обнаружен любой другой параметр--user.
-
Командная строка --validate-config[={OFF|ON}]Тип Булево Значение по умолчанию OFFПроверяет конфигурацию запуска сервера. При отсутствии ошибок сервер завершается с кодом выхода 0. При обнаружении ошибки сервер выводит диагностическое сообщение и завершается с кодом выхода 1. Сообщения об ошибках и информации могут также отображаться в зависимости от значения
log_error_verbosity, но не приводят к немедленному завершению проверки или коду выхода 1. Дополнительную информацию см. в разделе 7.1.3 «Проверка конфигурации сервера». -
--validate-user-plugins[={OFF|ON}]Командная строка --validate-user-plugins[={OFF|ON}]Тип Булево Значение по умолчанию ONЕсли этот параметр включен (по умолчанию), сервер проверяет каждую учётную запись пользователя и выдает предупреждение, если обнаружены условия, которые сделают учётную запись непригодной для использования:
Для учётной записи требуется плагин аутентификации, который не загружен.
Для учётной записи требуется плагин аутентификации
sha256_password(устаревший) илиcaching_sha2_password, но сервер был запущен без включения ни SSL, ни RSA, как требуется плагином.
Включение
--validate-user-pluginsзамедляет инициализацию сервера иFLUSH PRIVILEGES. Если дополнительная проверка не требуется, можно отключить этот параметр при запуске, чтобы избежать снижения производительности. -
Используйте этот параметр вместе с параметром
--helpдля получения подробной справки. -
--version,-VОтобразить информацию о версии и выйти.
© 2025 Oracle
Licensed under the GPLv2 License.