Глава 6. Администрирование сервера MySQL
MySQL Server (mysqld
) является основной программой, которая делает большую часть
работы в MySQL. Эта глава обеспечивает краткий обзор сервера MySQL и касается
общего администрирования сервера:
Конфигурация сервера.
- Каталог данных, особенно системная база данных
mysql .
- Файлы системного журнала сервера.
- -Управление многими серверами на единственной машине.
Для дополнительной информации об административных темах см. также:
6.1. MySQL Server
mysqld
это сервер MySQL. Следующее обсуждение затрагивает эти темы
конфигурации сервера MySQL:
Для списков переменных сервера MySQL и опций, которые были добавлены,
устарели или удалены в MySQL 8.0 см.
раздел 1.5.
Не все механизмы хранения поддержаны всеми сборками сервера MySQL и
конфигурациями. Чтобы узнать, как определить, которые механизмы хранения Ваш
сервер MySQL поддерживает, см.
раздел 14.7.5.16.
6.1.1. Конфигурирование сервера
Сервер MySQL, mysqld
, имеет много опций, команд и системных переменных, которые могут
быть установлены при запуске, чтобы сконфигурировать его работу. Чтобы
определить опцию и системные значения переменной, используемые сервером,
выполните эту команду:
shell> mysqld --verbose --help
Команда производит список всех опций и конфигурируемых системных
переменных mysqld
. Его вывод включает значения опций и переменных по умолчанию и
выглядит примерно так:
abort-slave-event-count 0
allow-suspicious-udfs FALSE
archive ON
auto-increment-increment1
auto-increment-offset 1
autocommitTRUE
automatic-sp-privileges TRUE
avoid-temporal-upgradeFALSE
back-log 80
basedir /home/jon/bin/mysql-8.0/
...
tmpdir/tmp
transaction-alloc-block-size8192
transaction-isolation REPEATABLE-READ
transaction-prealloc-size 4096
transaction-read-only FALSE
transaction-write-set-extraction OFF
updatable-views-with-limitYES
validate-user-plugins TRUE
verbose TRUE
wait-timeout28800
Чтобы видеть значения переменной существующей системы, используемые
сервером при работе, соединитесь с ним и выполните этот запрос:
mysql> SHOW VARIABLES;
Чтобы видеть некоторую статистистику и индикаторы состояния для рабочего
сервера, выполните этот запрос:
mysql> SHOW STATUS;
Система переменная и информация о статусе также является доступной
через mysqladmin
:
shell> mysqladmin variables
shell> mysqladmin extended-status
Для полного описания всех опций, команд, системных переменных и переменных
состояния см. эти разделы:
Более подробная информация о контроле доступна из
Performance Schema, см. главу 23.
Если Вы определяете опцию в командной строке для
mysqld или
mysqld_safe
, это остается в силе только для этого вызова сервера. Чтобы использовать
опцию каждый раз выполнения сервера, поместите ее в файл опции. См.
раздел 5.2.6.
6.1.2.
Значения по умолчанию конфигурации сервера
Сервер MySQL имеет много операционных параметров, которые Вы можете
изменить при запуске сервера, используя параметры командной строки или
конфигурационные файлы (файлы опции). Также возможно изменить много
параметров во время выполнения. Для общих инструкций по устаноке параметров
при запуске или во время выполнения см. разделы
6.1.4 и
6.1.5.
В Windows MySQL Installer взаимодействует с пользователем и создает файл
my.ini в основном каталоге установки как файл опции по
умолчанию. Если Вы устанавливаете в Windows из архива Zip,
Вы можете скопировать файл шаблона my-default.ini
в основном каталоге установки в my.ini
и использовать его в качестве файла опций по умолчанию.
В Windows расширение файла опции .ini или
.cnf может не отображаться.
На любой платформе после завершения процесса установки Вы можете
отредактировать файл опции по умолчанию в любое время, чтобы изменить
параметры, используемые сервером. Например, чтобы использовать установку
параметра в файле, который прокомментирован с символом #
в начале строки, удалите # и измените значение параметра в
случае необходимости. Чтобы отключить установку, допишите
символ # к началу строки.
Для дополнительной информации о формате файла опции и синтаксисе см.
раздел 5.2.6.
6.1.3.
Параметры и переменные сервера
Следующая таблица обеспечивает список всех параметров командной строки
сервера и переменных состояния, применимых в пределах mysqld .
Таблица приводит параметры командной строки (Cmd-line),
опции, допустимые в конфигурационных файлах (файл опций), системные
переменные сервера и переменные состояния в одном объединенном списке с
уведомлением о том, где каждая опция/переменная допустима. Если набор
параметра сервера на командной строке или в файле опции отличается от
названия соответствующей системы сервера или переменной состояния, имя
переменной отмечено немедленно ниже соответствующей опции. Для переменных
состояния показывают контекст (область действия) переменной. Пожалуйста,
изучите соответствующие разделы для деталей об установке и использовании
опций и переменных. Где надо, есть прямая ссылка к дополнительной
информации об элементе.
Таблица 6.1. Опции и переменные
6.1.4. Опции команд сервера
Когда Вы запускаете mysqld
, Вы можете определить опции программы, используя любой
из методов, описанных в разделе 5.2.3
. Наиболее распространенные методы должны предоставить данные в файле
опций или в командной строке. Однако, в большинстве случаев желательно
удостовериться, что сервер использует те же самые опции каждый раз. Лучший
способ гарантировать это состоит в том, чтобы перечислить их в файле опций.
См. раздел 5.2.6.
Этот раздел также описывает формат файла опций и синтаксис.
mysqld
читает опции из групп [mysqld] и [server] .
mysqld_safe
читает опции из групп [mysqld] , [server] ,
[mysqld_safe] и [safe_mysqld] .
mysql.server
читает опции из групп
[mysqld] и [mysql.server] .
Встроенный сервер MySQL обычно читает опции из групп
[server] , [embedded] и
[xxxxx _SERVER] , где xxxxx
название приложения, в которое встроен сервер.
mysqld
принимает много опций. Для краткого резюме выполните эту команду:
mysqld --help
Чтобы видеть полный список, используйте эту команду:
mysqld --verbose --help
Следующий список показывает некоторые из наиболее распространенных
параметров сервера. Дополнительные опции описаны в других разделах:
Некоторые опции управляют размером буферов или кэшей. Для данного буфера
сервер, возможно, должен был бы выделить внутренние структуры данных. Эти
структуры, как правило, выделяются из полной памяти, выделенной буферу, и
количество требуемого пространства может зависеть от платформы. Это означает,
что, когда Вы назначаете значение опции, которая управляет размером буфера,
количество фактически доступного пространства могло бы отличаться от
назначенного значения. В некоторых случаях количество могло бы быть меньше,
чем назначенное значение. Также возможно, что сервер скорректирует значение
вверх. Например, если Вы назначите значение 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 ,
см. раздел 14.7.4.1.
раздел 6.1.5
обеспечивает полное описание для всех переменных и дополнительную информацию
для того, чтобы установить их при запуске сервера и во время выполнения. Для
информации о системных переменных см.
раздел 6.1.1.
--help ,
-?
Формат командной строки
| --help |
Выведет на экран короткое сообщение справки. Используйте опции
--verbose и
--help , чтобы
видеть полное сообщение.
-
--allow-suspicious-udfs
Формат командной строки
| --allow-suspicious-udfs |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Эта опция управляет тем, будут ли загружены
определяемые пользователем функции, которые имеют только символ
only an xxx для основной функции. По умолчанию опция выключена и
только UDF, у которых есть по крайней мере один вспомогательный символ, может
быть загружен, это предотвращает попытки загрузки функций из совместно
используемых файлов объекта, кроме тех, которые содержат законный UDF. См.
раздел 26.4.2.6.
-
--ansi
Формат командной строки
| --ansi |
Использовать стандартный (ANSI) синтаксис SQL вместо синтаксиса MySQL. Для
более точного управления режимом SQL сервера, используйте
--sql-mode , см.
разделы 1.8 и
6.1.8.
-
--basedir=
dir_name ,
-b
dir_name
Формат командной строки
| --basedir=dir_name |
Системная переменная
| Имя |
basedir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Путь к каталогу установки MySQL. Все пути обычно решаются
относительно этого каталога.
-
--big-tables
Формат командной строки
| --big-tables |
Системная переменная
| Имя |
big_tables
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
big_tables
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включить большие наборы результатов, сохраняя все временные наборы в
файлах. Эта опция предотвращает большинство ошибок table full
, но также и замедляет запросы, для которых были бы достаточны
таблицы в памяти. Сервер в состоянии обработать большие наборы результатов
автоматически при использовании памяти для маленьких временных таблиц и
переключаясь на дисковые таблицы, где необходимо.
-
--bind-address=addr
Формат командной строки
| --bind-address=addr |
Системная переменная
| Имя |
bind_address
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
* |
Сервер MySQL слушает на единственном сетевом сокете для соединений
TCP/IP. Этот сокет связан с единственным адресом, но для адреса возможно
отобразиться на много сетевых интерфейсов. Чтобы определить адрес,
используйте опцию
--bind-address=addr при запуске сервера, где
addr адрес IPv4, IPv6 или имя хоста. Если
addr имя хоста, сервер решает имя к IP-адресу и
связывает с тем адресом.
Сервер обрабатывает различные типы адресов следующим образом:
Если адрес * , сервер принимает соединения TCP/IP на
всех интерфейсах IPv6 и IPv4, если узел сервера поддерживает IPv6, или
принимает соединения TCP/IP на всех адресах IPv4 иначе. Используйте этот
адрес, чтобы разрешить соединения IPv4 и IPv6 на всех интерфейсах сервера.
Это значение по умолчанию.
- Если адрес
0.0.0.0 , сервер принимает
соединения TCP/IP на всех интерфейсах IPv4.
- Если адрес
:: , сервер принимает
соединения TCP/IP на всех интерфейсах IPv4 и IPv6.
- Если это IPv4-отображенный адрес, сервер принимает соединения TCP/IP для
этого адреса в формате IPv4 или IPv6. Например, если сервер связан с
::ffff:127.0.0.1 , клиенты могут соединиться с использованием
--host=127.0.0.1 или --host=::ffff:127.0.0.1 .
- Если адрес обычный IPv4 или IPv6
(например,
127.0.0.1 или ::1 ), сервер принимает
соединения TCP/IP только для этого адреса IPv4 или IPv6.
Если Вы намереваетесь связать сервер с определенным адресом, убедитесь что
таблица mysql.user содержит учетную запись с административными
привилегиями, которые Вы можете использовать, чтобы соединиться с этим
адресом. Иначе Вы не будете в состоянии закрыть сервер. Например, если Вы
связываете сервер с * , Вы можете соединиться с этим, используя
все существующие учетные записи. Но если Вы связываете сервер с
::1 , он принимает соединения только на этом адресе. В этом
случае сначала удостоверьтесь, что учетная запись
'root'@'::1' присутствует в таблице mysql.user ,
таким образом, Вы можете все еще соединиться с сервером, чтобы закрыть его.
-
--binlog-format={ROW|STATEMENT|MIXED}
Формат командной строки
| --binlog-format=format |
Системная переменная
| Имя |
binlog_format |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
ROW |
Допустимые значения |
ROW |
STATEMENT |
MIXED |
Использовать основанную на строке, основанную на запросе или смешанную
репликацию. Основанная на запросе является значением по умолчанию в MySQL
8.0. См. раздел 19.2.1.
При некоторых условиях изменение этого параметра во время выполнения
невозможно или заставляет репликацию терпеть неудачу. См.
раздел 6.4.4.2.
Установка двоичного формата журналирования, не включая двоичное
журналирование устанавливает
binlog_format глобальную системную
переменную и пишет предупреждение.
-
--character-sets-dir=dir_name
Формат командной строки
| --character-sets-dir=dir_name |
Системная переменная
| Имя |
character_sets_dir |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Каталог, где наборы символов установлены. См.
раздел 11.5.
-
--character-set-client-handshake
Формат командной строки
| --character-set-client-handshake
|
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
TRUE |
Не игнорировать информацию о наборе символов, посланную клиентом.
Чтобы проигнорировать информацию о клиенте и использовать набор символов по
умолчанию сервера, надо использовать
--skip-character-set-client-handshake ,
это заставляет MySQL вести себя как MySQL 4.0.
-
--character-set-filesystem=charset_name
Формат командной строки
| --character-set-filesystem=name |
Системная переменная
| Имя |
character_set_filesystem |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
binary |
Набор символов файловой системы. Эта опция устанавливает системную
переменную
character_set_filesystem .
-
--character-set-server=charset_name ,
-C charset_name
Формат командной строки
| --character-set-server |
Системная переменная
| Имя |
character_set_server |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
latin1 |
Используйте charset_name
как набор символов по умолчанию сервера. См.
раздел 11.5.
Если Вы используете эту опцию, чтобы определить набор символов не по
умолчанию, Вы должны также использовать
--collation-server , чтобы определить сопоставление.
-
--chroot=dir_name ,
-r dir_name
Формат командной строки
| --chroot=dir_name |
Допустимые значения |
Тип |
directory name |
Поместить сервер mysqld
в закрытую окружающую среду во время запуска при
использовании системного вызова chroot() .
Это рекомендуемая мера по безопасности. Использование этой опции несколько
ограничивает LOAD DATA INFILE и
SELECT ... INTO OUTFILE .
-
--collation-server=collation_name
Формат командной строки
| --collation-server |
Системная переменная
| Имя |
collation_server |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
latin1_swedish_ci |
Использовать collation_name как сопоставление
сервера по умолчанию. См. раздел
11.5.
-
--console
Формат командной строки
| --console |
Платформа |
Windows |
Только Windows. Сообщения журнала ошибки при записи к
stderr и stdout даже если
--log-error
определен. mysqld
не закрывает консоль, если эта опция используется.
Если --log-error
и --console
определены, --console
имеет приоритет. Сервер пишет на консоль, но не в
файл системного журнала.
-
--core-file
Формат командной строки
| --core-file |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Писать файл дампа, если
mysqld падает. Название и местоположение основного файла
зависит от системы. На Linux это core.pid
в текущем рабочем каталоге процесса, который для
mysqld
каталог данных. pid ID процесса сервера. В OS X это
core.pid в каталоге /cores .
В Solaris используйте команду coreadm, чтобы
определить, где написать основной файл и как назвать его.
Для некоторых систем чтобы получить основной файл Вы должны также
определить
--core-file-size в
mysqld_safe. См.
раздел 5.3.2.
На некоторых системах, таких как Solaris,
Вы не получаете основной файл, если Вы также используете опцию
--user .
Могут быть дополнительные ограничения или ограничения. Например, может
быть необходимо выполнить ulimit -c unlimited
прежде, чем запустить сервер.
Консультируйтесь со своей системной документацией.
-
--daemonize
Формат командной строки
| --daemonize[={OFF|ON}] |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта опция заставляет сервер работать как традиционный
разветвляющийся демон, разрешая это работать с операционными системами,
которые используют systemd для управления процессом.
Для получения дополнительной информации см.
раздел 2.5.9.
--daemonize
является взаимоисключающим с
--initialize и
--initialize-insecure .
-
--datadir=dir_name
, -h dir_name
Формат командной строки
| --datadir=dir_name |
Системная переменная
| Имя |
datadir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Путь к каталогу данных.
-
--debug[=
debug_options ] ,
-# [debug_options ]
Формат командной строки
| --debug[=debug_options] |
Системная переменная
| Имя |
debug |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(Unix) | Тип |
string |
Значение по умолчанию |
d:t:i:o,/tmp/mysqld.trace |
Допустимые значения
(Windows) | Тип |
string |
Значение по умолчанию |
d:t:i:O,\mysqld.trace |
Если MySQL сконфигурирован с опцией CMake
-DWITH_DEBUG=1
, Вы можете использовать эту опцию, чтобы получить файл трассировки
того, что делает mysqld
. Типичная строка debug_options :
d:t:o,file_name . Значение по умолчанию
d:t:i:o,/tmp/mysqld.trace в Unix и
d:t:i:O,\mysqld.trace в Windows.
Использование
-DWITH_DEBUG=1 , чтобы сконфигурировать MySQL с поддержкой отладки,
позволяет Вам использовать опцию
--debug="d,parser_debug"
, когда Вы запускаете сервер. Это вызывает анализатор Bison,
который используется, чтобы обработать запросы SQL, чтобы вывести трассировку
анализатора к стандартному ошибочному выводу сервера. Как правило, этот вывод
написан в журнал ошибок.
Эта опция может быть дана многократно. Значения, которые начинаются с
with + или - , добавлены или вычтены из предыдущего
значения. Например, --debug=T
--debug=+P
устанавливает значение в P:T .
См. раздел 26.5.3.
-
--debug-sync-timeout[=N ]
Формат командной строки
| --debug-sync-timeout[=#] |
Допустимые значения |
Тип |
integer |
Управляет Debug Sync для тестирования и отладки. Использование Debug Sync
требует, чтобы MySQL был сконфигурирован с опцией
-DENABLE_DEBUG_SYNC=1 для CMake (см.
раздел 2.8.4). Если
Debug Sync не собран, эта опция недоступна. Значение опции: тайм-аут в
секундах. Значение по умолчанию 0, отключает Debug Sync. Чтобы включить,
определите значение больше, чем 0, это значение также становится тайм-аутом
по умолчанию для отдельных пунктов синхронизации. Если опция дана без
значения, тайм-аут установлен в 300 секунд.
Для описания средства Debug Sync и как использовать пункты синхронизации
см. MySQL Internals: Test Synchronization.
-
--default-storage-engine=type
Формат командной строки
| --default-storage-engine=name |
Системная переменная
| Имя |
default_storage_engine |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
InnoDB |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
MyISAM |
Установить механизм хранения значения по умолчанию для таблиц. См.
главу 17. Эта опция устанавливает механизм хранения
только для постоянных таблиц. Установить механизм хранения для таблиц
TEMPORARY можно переменной
default_tmp_storage_engine .
Если Вы отключаете механизм хранения по умолчанию при запуске сервера, Вы
должны установить механизм по умолчанию для постоянных и для таблиц
TEMPORARY к иному механизму, или сервер не будет запускаться.
-
--default-time-zone=timezone
Формат командной строки
| --default-time-zone=name |
Допустимые значения |
Тип |
string |
Установить часовой пояс сервера по умолчанию. Эта опция устанавливает
глобальную переменную time_zone
. Если эта опция не дана, часовой пояс по умолчанию тот же самый,
как системный часовой пояс (данный значением
system_time_zone ).
-
--defaults-extra-file=file_name
Читать этот файл опции после глобального файла опции, но (в Unix) перед
пользовательским файлом опции. Если файл не существует или недоступен, ошибка
происходит. file_name интерпретируется относительно
текущего каталога, если дано как относительный, а не полный путь.
-
--defaults-file=
file_name
Используйте только данный файл опции. Если файл не существует или
недоступен, ошибка происходит. file_name
интерпретируется относительно текущего каталога, если дано как относительный
путь, а не полный.
Исключение: Даже с
--defaults-file
mysqld читает mysqld-auto.cnf .
-
--defaults-group-suffix=str
Читать не только обычные группы опции, но также и группы с именами и
суффиксом str . Например,
mysqld
обычно читает группу [mysqld] . Если
--defaults-group-suffix=_other задана,
mysqld
также читает группу [mysqld_other] .
-
--delay-key-write[={OFF|ON|ALL}]
Формат командной строки
| --delay-key-write[=name] |
Системная переменная
| Имя |
delay_key_write |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
ON |
Допустимые значения |
ON |
OFF |
ALL |
Определите, как использовать отсроченную запись ключа.
Это заставляет ключевые буферы не сбрасываться между записями для
MyISAM . OFF отключает отсроченную запись.
ON включает отсроченную запись для тех таблиц, которые были
составлены с опцией DELAY_KEY_WRITE .
ALL делает задержку записи для всех таблиц
MyISAM . См. разделы
6.1.1 и
17.2.1.
Если Вы устанавливаете эту переменную в ALL , Вы не должны
использовать таблицы MyISAM изнутри другой программы (другой
сервер MySQL или myisamchk
, например), когда таблицы используются.
--des-key-file=file_name
Формат командной строки
| --des-key-file=file_name
|
Читать ключи DES по умолчанию из этого файла. Эти ключи используются
DES_ENCRYPT() и
DES_DECRYPT() .
-
--early-plugin-load=plugin_list
Формат командной строки
| --early-plugin-load=plugin_list |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
empty string |
Эта опция говорит серверу, который плагин загрузить прежде, чем загрузить
принудительные встроенные плагины и перед инициализацией механизма хранения.
Если дано несколько
--early-plugin-load , только последняя используется.
Значение опции отделенный точки с запятой список
name = plugin_library
и plugin_library . Каждый name
это название плагина, чтобы загрузить, а plugin_library
это название файла библиотеки, которая содержит код. Если библиотеку называют
без какого-либо предыдущего имени, сервер загружает все плагины в библиотеке.
Сервер ищет файлы библиотек в каталоге, названном в переменной
plugin_dir .
Например, если плагины называются
myplug1 и myplug2 и имеют файлы библиотеки
myplug1.so и myplug2.so ,
используйте эту опцию, чтобы выполнить раннюю загрузку:
shell> 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 , загружены, но не инициализированы. Это
поведение гарантирует, что опции плагина выведены на
экран в сообщении справки.
По умолчанию
--early-plugin-load пусто. Чтобы загрузить плагин
keyring_file , Вы должны использовать явно опцию
--early-plugin-load с непустым значением.
Особенность шифрования табличного пространства InnoDB
полагается на плагин keyring_file для управления ключом
шифрования и плагин keyring_file должен быть загружен до
инициализации механизма хранения, чтобы облегчить InnoDB
восстановление для зашифрованных таблиц. Администраторы, которые хотят
загрузить keyring_file при запуске, должны использовать
соответствующее непустое значение опции, например, keyring_file.so
в Unix и keyring_file.dll в Windows.
Для информации о шифровании табличного пространства InnoDB
см. раздел 16.7.10.
Для общей информации о загрузке плагинов см.
раздел 6.6.2.
-
--enable-named-pipe
Формат командной строки
| --enable-named-pipe |
Платформа |
Windows |
Включить поддержку именованных каналов.
Эта опция применяется только в Windows.
-
--event-scheduler[=value ]
Формат командной строки
| --event-scheduler[=value] |
Системная переменная
| Имя |
event_scheduler |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
OFF |
Допустимые значения |
ON |
OFF |
DISABLED |
Включить или отключить планировщик событий.
Для получения дальнейшей информации см.
--event-scheduler .
-
--exit-info[=flags ] ,
-T [flags ]
Формат командной строки
| --exit-info[=flags] |
Допустимые значения |
Тип |
integer |
Это битовая маска различных флагов, которые Вы можете использовать для
того, чтобы отладить mysqld
. Не используйте эту опцию, если Вы не знаете
точно, что она делает!
-
--external-locking
Формат командной строки
| --external-locking |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Включить внешнюю блокировку (системную блокировку), которая отключена по
умолчанию. Если Вы используете эту опцию на системе, на которой
lockd толком не работает (к примеру, в Linux),
mysqld
легко зайти в тупик.
Чтобы отключить внешнюю блокировку явно, надо использовать
--skip-external-locking .
Внешняя блокировка затрагивает только доступ к таблицам
MyISAM .
Для получения дополнительной информации, включая условия, при которых это
может и не может использоваться, см.
раздел 9.11.5.
-
--flush
Формат командной строки
| --flush |
Системная переменная
| Имя |
flush |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Синхронизирует все изменения диска после каждого запроса SQL. Обычно MySQL
делает запись всех изменений на диск только после каждого запроса SQL и
позволяет операционной системе обрабатывать синхронизацию с диском. См.
раздел B.5.3.3.
-
--gdb
Формат командной строки
| --gdb |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Установить обработчик прерывания для SIGINT
(должен остановить mysqld
по ^C , чтобы установить контрольные точки)
и отключить трассировку стека и основную обработку файла. См.
раздел 26.5.
-
--general-log[={0|1}]
Формат командной строки
| --general-log |
Системная переменная
| Имя |
general_log
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Определить начальное состояние журнала запроса. Без параметра или с
параметром 1 опция
--general-log включает журнал. Если опущено или дано с параметром
0, опция отключает журнал.
-
--initialize
Формат командной строки
| --initialize |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта опция используется, чтобы инициализировать установку MySQL, создавая
каталог данных и заполняя таблицы в системной базе данных mysql ,
см. раздел 2.9.1.1
.
Когда сервер запущен с опцией
--initialize ,
некоторая функциональность недоступна, что ограничивает запросы, разрешенные
в любом файле, названном в --init-file . Кроме того,
disabled_storage_engines не имеет никакого эффекта.
--initialize
является взаимоисключающим с
--daemonize .
-
--initialize-insecure
Формат командной строки
| --initialize-insecure |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта опция используется, чтобы инициализировать установку MySQL, создавая
каталог данных и заполняя таблицы в системной базе данных mysql .
Эта опция подразумевает
--initialize . См.
раздел 2.9.1.1
.
--initialize-insecure является взаимоисключающим с
--daemonize .
-
--init-file=file_name
Формат командной строки
| --init-file=file_name |
Системная переменная
| Имя |
init_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Читать запросы SQL из этого файла при запуске. Каждый запрос должен быть
на одной строке и не должен включать комментарии.
Если сервер запущен с
--initialize
или
--initialize-insecure , это работает в bootstap режиме, и некоторая
функциональность недоступна, что ограничивает запросы, разрешенные в файле.
Они включают запросы, которые касаются ведения учетных записей, репликацию
и глобальные операционные идентификаторы. См.
раздел 19.1.3.
--innodb-xxx
Установите опцию для механизма хранения InnoDB .
Опции InnoDB перечислены в
разделе 16.13.
-
--install
[service_name ]
Формат командной строки
| --install [service_name] |
Платформа |
Windows |
Только Windows. Установка сервера как службы Windows, которая запускается
автоматически во время запуска Windows. Имя службы по умолчанию
MySQL , если нет service_name . Для
получения дополнительной информации см.
раздел 2.3.5.8.
Если сервер запущен с
--defaults-file и
--install ,
--install
должна быть первой.
--install-manual
[service_name ]
Формат командной строки
| --install-manual [service_name]
|
Платформа |
Windows |
Только Windows. Установка сервера как службы Windows, которая должна быть
запущена вручную. Это не запускается автоматически во время запуска Windows.
Имя службы по умолчанию MySQL , если нет
service_name , см.
раздел 2.3.5.8.
Если сервер запущен с
--defaults-file
и
--install-manual ,
--install-manual должна быть первой.
--language=
lang_name , -L lang_name
Устарела |
5.6.1, by
lc-messages-dir |
Формат командной строки
| --language=name |
Системная переменная
| Имя |
language |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
directory name |
Значение по умолчанию |
/usr/local/mysql/share/mysql/english/
|
Язык, чтобы использовать для сообщений об ошибках.
lang_name может быть дан как языковое имя или как
полный путь к каталогу, где языковые файлы установлены. См.
раздел 11.2.
--lc-messages-dir
и
--lc-messages должны использоваться, а не
--language ,
которая устарела (и обработана как псевдоним для
--lc-messages-dir
). --language
будет удалена в будущем выпуске MySQL.
-
--large-pages
Формат командной строки
| --large-pages |
Системная переменная
| Имя |
large_pages
|
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Linux |
Допустимые значения
(Linux) | Тип |
boolean |
Значение по умолчанию |
FALSE |
Немногие архитектуры аппаратных средств/операционной системы поддерживают
страницы памяти больше, чем значение по умолчанию (обычно 4 КБ). Фактическое
выполнение этой поддержки зависит от используемого оборудования и
операционной системы. Приложения, которые выполняют много доступов к памяти,
могут получить рост скорости при использовании больших страниц из-за
уменьшенного буфера хранения перевода.
MySQL поддерживает выполнение Linux поддержки большой страницы (которую
называют HugeTLB в Linux). См.
раздел 9.12.3.2. Для Solaris
больших страниц см. описание опции
--super-large-pages .
--large-pages
отключена по умолчанию.
-
--lc-messages=
locale_name
Формат командной строки
| --lc-messages=name |
Системная переменная
| Имя |
lc_messages
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
en_US |
Локаль для сообщений об ошибках. Значение по умолчанию
en_US . Сервер преобразовывает параметр к языковому имени и
комбинирует его со значением
--lc-messages-dir
, чтобы произвести местоположение для файла сообщения об ошибке.
См. раздел 11.2.
-
--lc-messages-dir=dir_name
Формат командной строки
| --lc-messages-dir=dir_name |
Системная переменная
| Имя |
lc_messages_dir |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Каталог, где сообщения об ошибках расположены. Сервер использует значение
вместе со значением
--lc-messages , чтобы произвести местоположение для файла сообщения
об ошибке. См. раздел 11.2.
-
--local-service
Формат командной строки
| --local-service |
Только Windows. Опция --local-service
после имени службы заставляет сервер выполнять использование учетной записи
Windows LocalService , которая ограничила системные привилегии.
Если оба параметра
--defaults-file и --local-service даны после
имени службы, они могут быть в любом порядке. См.
раздел 2.3.5.8.
-
--log-error[=file_name ]
Формат командной строки
| --log-error[=file_name] |
Системная переменная
| Имя |
log_error
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Ошибки и сообщения запуска писать в этот файл. См.
раздел 6.4.2.
Если у имени файла нет никакого расширения, сервер добавляет расширение
.err . Если Вы опускаете имя файла, файл системного журнала по
умолчанию в Unix host_name .err
в каталоге данных. Значение по умолчанию в Windows
host_name .err в каталоге данных, если
опция --pid-file
указана. В этом случае имя по умолчанию PID
с суффиксом .err в каталоге данных.
-
--log-isam[=
file_name ]
Формат командной строки
| --log-isam[=file_name] |
Допустимые значения |
Тип |
file name |
Зарегистрировать все изменения MyISAM в этом файле
(использовать только отлаживая MyISAM ).
-
--log-output=
value ,...
Формат командной строки
| --log-output=name |
Системная переменная
| Имя |
log_output
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
set |
Значение по умолчанию |
FILE |
Допустимые значения |
TABLE |
FILE |
NONE |
Эта опция определяет место назначения для общего журнала запроса и
медленного журнала запроса. Значение опции может быть дано как одно или
больше слов TABLE , FILE или NONE .
TABLE выбирает журналирование к таблицам
general_log и
slow_log в базе данных mysql как место назначения.
FILE выбирает журналирование к файлам системного журнала как
место назначения. NONE отключает журналирование. Если
NONE присутствует в значении опции, это имеет приоритет перед
любыми другими словами, которые присутствуют. TABLE и
FILE могут оба быть даны, чтобы выбрать оба выходных
места назначения журнала.
Эта опция выбирает выходные места назначения журнала, но не включает
вывод журнала. Чтобы сделать это, используйте
--general_log и
--slow_query_log .
Для FILE опции
--general_log_file
и -slow_query_log_file определяют местоположение файла
системного журнала. Для получения дополнительной информации см.
раздел 6.4.1.
-
--log-queries-not-using-indexes
Формат командной строки
| --log-queries-not-using-indexes |
Системная переменная
| Имя |
log_queries_not_using_indexes |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Если Вы используете эту опцию с включенным медленным журналом запроса,
зарегистрированы запросы, которые, как ожидают, получат все строки. См.
раздел 6.4.5. Эта опция не
обязательно означает, что индекс не используется. Например, запрос, который
использует полный просмотр индекса, использует индекс, но будет
зарегистрирован, потому что индексирование не будет ограничивать число строк.
-
--log-raw
Формат командной строки
| --log-raw[=value] |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Пароли в определенных запросах, написанных в
общий журнал запроса, медленный журнал запроса и двоичный журнал, переписаны
сервером, чтобы не появляться буквально в простом тексте.
Перезапись пароля может быть подавлена для общего журнала запроса, запуская
сервер с опцией --log-raw
. Эта опция может быть полезной в диагностических целях, чтобы
видеть точный текст запросов, как получено сервером, но из соображений
безопасности не рекомендуется для производственного использования.
Если плагин перезаписи запроса установлен, опция
--log-raw
затрагивает запрос следующим образом:
См. раздел 7.1.2.3.
-
--log-short-format
Формат командной строки
| --log-short-format |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Зарегистрирует меньше информации в медленном журнале запроса,
если это было активировано.
-
--log-tc=
file_name
Формат командной строки
| --log-tc=file_name |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
tc.log |
Название отображенного на память операционного файла системного журнала
координатора (для транзакций XA, которые затрагивают многие механизмы
хранения, когда двоичный журнал отключен). Имя по умолчанию
tc.log . Файл создается в каталоге данных, если не дан как полный
путь. Эта опция не использована.
-
--log-tc-size=
size
Формат командной строки
| --log-tc-size=# |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
6 * page size |
Минимум |
6 * page size |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
6 * page size |
Минимум |
6 * page size |
Максимум |
18446744073709551615 |
Размер в байтах отображенного на память операционного журнала
координатора. Значение по умолчанию и минимальное значение 6*размер страницы,
значение должно быть кратным размеру страницы.
-
--log-warnings[=level ] ,
-W [level ]
Устарела |
5.7.2 |
Формат командной строки
| --log-warnings[=#] |
Системная переменная
| Имя |
log_warnings
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
2 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
2 |
Минимум |
0 |
Максимум |
18446744073709551615 |
log_error_verbosity
предпочтена, и должна использоваться вместо
--log-warnings
или log_warnings
. См.
log_error_verbosity и
log_warnings . Опция командной строки
--log-warnings
и системная переменная
log_warnings устарели и будут удалены в будущем выпуске MySQL.
Произвести ли дополнительные предупреждающие сообщения для журнала ошибок.
Эта опция включена по умолчанию со значением 2. Чтобы отключить это, надо
использовать
--log-warnings=0 . Определение опции без level
увеличивает текущее значение на 1. Сервер регистрирует сообщения о
запросах, которые опасны для основанного на запросе журналирования, если
значение больше 0. Прерванные соединения и ошибки доступа для новых попыток
соединения зарегистрированы, если значение больше 1. См.
раздел B.5.2.10.
-
--low-priority-updates
Формат командной строки
| --low-priority-updates |
Системная переменная
| Имя |
low_priority_updates |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Дать изменяющим таблицу операциям
(INSERT ,
REPLACE ,
DELETE и
UPDATE )
более низкий приоритет, чем select. Это может также быть сделано, используя
{INSERT | REPLACE | DELETE | UPDATE} LOW_PRIORITY ... , чтобы
понизить приоритет только одного запроса, или SET
LOW_PRIORITY_UPDATES=1 , чтобы изменить приоритет в одном потоке. Это
затрагивает только механизмы хранения, которые используют только блокировку
на уровне таблицы (MyISAM , MEMORY ,
MERGE ). См. раздел 9.11.2
.
-
--min-examined-row-limit=number
Формат командной строки
| --min-examined-row-limit=# |
Системная переменная
| Имя |
min_examined_row_limit
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Когда эта опция установлена, запросы, которые исследуют меньше
number строк не записаны в медленный журнал запроса.
Значение по умолчанию 0.
-
--memlock
Формат командной строки
| --memlock |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Заблокирует процесс mysqld
в памяти. Эта опция могла бы помочь, если у Вас есть
проблема, что операционная система заставляет
mysqld свопиться на диск.
--memlock
работает в системах, которые поддерживают системный вызов
mlockall() : Solaris, Linux с ядром 2.4 и выше и некоторые Unix.
В Linux Вы можете сказать, действительно ли
mlockall() (и таким образом эта опция), поддержан, проверяя,
определен ли он в системном файле mman.h :
shell> grep mlockall /usr/include/sys/mman.h
Если mlockall() поддержан, Вы должны видеть в выводе
предыдущей команды что-то вроде:
extern int mlockall (int __flags) __THROW;
Использование этой опции может потребовать, чтобы Вы выполнили сервер как
root , по причинам безопасности, это обычно не хорошая идея. См.
раздел 7.1.5.
В Linux и возможно в других системах Вы можете избежать потребности
выполнить сервер как root изменяя файл limits.conf .
См. раздел 9.12.3.2.
Вы не должны попытаться использовать эту опцию в системе, которая не
поддерживает системный вызов mlockall() , если Вы сделаете это,
mysqld
очень вероятно откажет, как только Вы попытаетесь запустить его.
--myisam-block-size=N
Формат командной строки
| --myisam-block-size=# |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
1024 |
Максимум |
16384 |
Размер блока, который будет использоваться для
индексных страниц MyISAM .
-
--myisam-recover-options[=option [,
option ]...]]
Формат командной строки
| --myisam-recover-options[=name] |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
OFF |
Допустимые значения |
OFF |
DEFAULT |
BACKUP |
FORCE |
QUICK |
Установить режим восстановления механизма хранения MyISAM .
Значение опции: любая комбинация значений
OFF , DEFAULT , BACKUP ,
FORCE или QUICK . Если Вы определяете много
значений, отделите их запятыми. Определение опции без параметра является тем
же самым, как определение DEFAULT , определение с явным значением
"" отключает восстановление (то же самое как значение
OFF ). Если восстановление включено, каждый раз
mysqld
открывая таблицу MyISAM , проверяет, отмечена ли таблица как
разрушенная или не была закрыта должным образом. Последняя опция работает,
только если Вы работаете с отключенной внешней блокировкой. Если это верно,
mysqld
осуществляет проверку таблицы. Если таблица была повреждена,
mysqld
пытается восстановить ее.
Следующие опции затрагивают ремонтные работы.
Опция | Описание |
OFF | Ничего не делать. |
DEFAULT |
Восстановление без резервного копирования, принуждения или быстрой проверки.
|
BACKUP | Если файл с данными был
изменен во время восстановления, сохранить резервную копию файла
tbl_name .MYD как
tbl_name-datetime .BAK . |
FORCE | Выполнить восстановление, даже
если мы потеряли бы больше, чем одну строку из файла .MYD .
|
QUICK | Не проверять строки в таблице,
если нет удаленных блоков. |
Прежде, чем сервер автоматически восстанавливает таблицу, он пишет
о ремонте в журнал ошибок. Если Вы хотите быть в состоянии исправить
большинство проблем без пользовательского вмешательства, Вы должны
использовать опции BACKUP, FORCE . Это вызывает ремонт таблицы,
даже если некоторые строки были бы удалены, но это сохраняет старый файл с
данными как резервную копию, чтобы Вы могли позже исследовать, что произошло.
См. раздел 17.2.1.
-
--no-defaults
Не читать файлы опции. Если запуск программы терпит неудачу из-за чтения
неизвестных опций из файла опции,
--no-defaults
может использоваться, чтобы препятствовать тому, чтобы они были считаны.
Исключение: файл .mylogin.cnf , если существует, считан во
всех случаях. Это разрешает паролям быть определенными более безопасным
способом, чем в командной строке, даже когда
--no-defaults
использована. .mylogin.cnf создается
mysql_config_editor
, см.
раздел 5.6.7.
-
--old-alter-table
Формат командной строки
| --old-alter-table |
Системная переменная
| Имя |
old_alter_table |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Когда эта опция дана, сервер не использует оптимизированный метод
обработки ALTER TABLE .
Это возвращается к использованию временной таблицы, копированию данных и
затем переименованию временной таблицы к оригиналу, как используется в MySQL
5.0 и ранее. Для получения дополнительной информации о работе
ALTER TABLE см.
раздел 14.1.7.
-
--old-style-user-limits
Формат командной строки
|
--old-style-user-limits |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Включить пользовательские пределы в старом стиле. До MySQL 5.0.3 пределы
ресурса учетной записи были посчитаны отдельно для каждого узла, от которого
пользователь соединялся, а не для строки учетной записи в таблице
user . См. раздел 7.3.5
.
-
--open-files-limit=count
Формат командной строки
| --open-files-limit=# |
Системная переменная
| Имя |
open_files_limit |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
5000, with possible adjustment |
Минимум |
0 |
Максимум |
platform dependent |
Изменяет число описателей файла, доступных
mysqld.
Вы должны попытаться увеличить значение этой опции, если
mysqld
дает Вам ошибку Too many open files .
mysqld
использует значение опции, чтобы зарезервировать описатели с
setrlimit() . Внутренне максимальное значение
для этой опции unsigned integer, но фактический максимум зависит от
платформы. Если требуемое число описателей файла не может быть выделено,
mysqld
пишет предупреждение в журнал ошибок.
mysqld
может попытаться выделить больше требуемого числа описателей (если они
доступны), используя значения
max_connections и
table_open_cache
, чтобы оценить, будет ли необходимо больше описателей.
В Unix значение не может быть установлено меньше ulimit
-n.
--performance-schema-xxx
Сконфигурирует опцию Performance Schema. Для деталей см.
раздел 23.11.
-
--pid-file=file_name
Формат командной строки
| --pid-file=file_name |
Системная переменная
| Имя |
pid_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Путь файла ID процесса. Сервер создает файл в каталоге данных, если
абсолютный путь не дан, чтобы определить иной каталог. Этот файл используется
другими программами, такими как
mysqld_safe, чтобы определить
ID процесса сервера.
-
--plugin-xxx
Определяет опцию, которая принадлежит плагину сервера. Например, много
механизмов хранения могут быть созданы как плагины, и для таких механизмов,
опции для них могут быть определены с префиксом
--plugin .
Таким образом,
--innodb_file_per_table для InnoDB может быть
определен как
--plugin-innodb_file_per_table .
Для булевых опций, которые могут быть включены или отключены, префикс
--skip и другие альтернативные форматы поддержаны также (см.
раздел 5.2.5). Например,
--skip-plugin-innodb_file_per_table выключает
innodb_file_per_table .
Объяснение для префикса --plugin то, что это
позволяет опциям плагинов быть определенными однозначно, если есть конфликт
имени со встроенным параметром сервера. Например, если автор назвал плагин
sql и осуществил опцию mode
, имя опции могло бы быть
--sql-mode , что
в противоречии со встроенной опцией с тем же самым именем. В таких случаях
ссылки на противоречивое имя решены в пользу встроенной опции. Чтобы избежать
двусмысленности, пользователи могут определить опцию плагина как
--plugin-sql-mode . Использование префикса
--plugin для опций плагина рекомендуют, чтобы избежать
любого вопроса двусмысленности.
-
--plugin-load=
plugin_list
Формат командной строки
| --plugin-load=plugin_list |
Допустимые значения |
Тип |
string |
Эта опция говорит серверу загружать названные плагины при запуске. Если
дано несколько опций
--plugin-load , только последняя используется. Дополнительные
плагины, чтобы загрузить могут быть определены, используя
--plugin-load-add .
Значение опции разделенный точкой с запятой список значений
name = plugin_library
и plugin_library . Каждое name это
название плагина, чтобы загрузить, а plugin_library
название файла библиотеки, которая содержит код. Если библиотеку называют без
какого-либо предыдущего имени плагина, сервер загружает все плагины в
библиотеке. Сервер ищет файлы библиотеки в каталоге, названном в переменной
plugin_dir .
Например, если плагины называют myplug1 и
myplug2 и они имеют библиотеки
myplug1.so и myplug2.so ,
используйте эту опцию, чтобы выполнить раннюю загрузку:
shell> 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
также позволяет быть загруженными при запуске плагинам, которые не могут быть
загружены во время выполнения.
См. раздел 6.6.2.
-
--plugin-load-add=plugin_list
Формат командной строки
| --plugin-load-add=plugin_list |
Допустимые значения
| Тип |
string |
Эта опция дополняет
--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
См. раздел 6.6.2.
-
--port=port_num
, -P port_num
Формат командной строки
| --port=# |
Системная переменная
| Имя |
port |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
3306 |
Минимум |
0 |
Максимум |
65535 |
Номер порта, чтобы использовать, слушая соединения TCP/IP.
На Unix номер порта должен быть 1024 или выше, если сервер
не запущен как root .
-
--port-open-timeout=num
Формат командной строки
| --port-open-timeout=# |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
На некоторых системах, когда сервер остановлен, порт TCP/IP не
может стать доступным немедленно. Если сервер перезапущен быстро, его попытка
вновь открыть порт может потерпеть неудачу. Эта опция указывает, сколько
секунд сервер должен ждать порт TCP/IP, если это не может быть открыто.
Значение по умолчанию не должно ждать.
-
--print-defaults
Напечатать название программы и все опции, которые это получает
от файлов опции.
-
--remove
[service_name ]
Формат командной строки
| --remove [service_name] |
Платформа |
Windows |
Только Windows. Удаляет службу Windows MySQL. Имя службы по умолчанию
MySQL , если service_name не указан.
См. раздел 2.3.5.8.
-
--safe-user-create
Формат командной строки
| --safe-user-create |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Если эта опция включена, пользователь не может создать новых пользователей
MySQL при использовании GRANT , если
пользователь не имеет привилегии
INSERT для таблицы mysql.user или любого
столбца в таблице. Если Вы хотите, чтобы у пользователя была способность
создать новых пользователей, у которых есть те привилегии, которые
пользователь имеет право предоставить, Вы должны предоставить
пользователю следующую привилегию:
GRANT INSERT(user) ON mysql.user TO 'user_name '@'host_name ';
Это гарантирует, что пользователь не может изменить столбцы привилегии
непосредственно, но должен использовать
GRANT , чтобы дать
привилегии другим пользователям.
-
--secure-auth
Устарела |
5.7.5 |
Формат командной строки
| --secure-auth |
Системная переменная
| Имя |
secure_auth
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Допустимые значения
| ON |
Эта опция заставляет сервер блокировать соединения клиентам, которые
пытаются использовать учетные записи, которые сохранили пароли в старом
(до 4.1) формате. Используйте это, чтобы предотвратить использование паролей,
использующих старый формат (и следовательно опасную коммуникацию по сети).
Эта опция устарела и будет удалена в будущем выпуске MySQL. Это всегда
включается и попытка отключить это
(--skip-secure-auth
,
--secure-auth=0 ) производит ошибку.
Запуск сервера терпит неудачу с ошибкой, если эта опция включена, и
таблицы привилегии находятся в формате pre-4.1.
mysql
также имеет опцию
--secure-auth , которая предотвращает соединения с сервером, если
сервер требует пароля в старом формате для учетной записи клиента.
Пароли, которые используют pre-4.1, менее безопасны, чем пароли, которые
используют родной метод хеширования пароля. Пароли Pre-4.1 устарели
и поддержка их была удалена.
--secure-file-priv=
dir_name
Формат командной строки
| --secure-file-priv=dir_name |
Системная переменная
| Имя |
secure_file_priv |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
platform specific |
Допустимые значения |
empty |
dirname |
NULL |
Эта опция устанавливает
secure_file_priv
, которая используется, чтобы ограничить эффект импорта и экспортных
операций, таких как выполнение
LOAD DATA и
SELECT ... INTO OUTFILE и
функция LOAD_FILE() .
-
--shared-memory
Формат командной строки
| --shared_memory[={0,1}] |
Системная переменная
| Имя |
shared_memory
|
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Windows |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Включить соединения совместно используемой памяти местными клиентами.
Эта опция доступна только в Windows.
-
--shared-memory-base-name=name
Формат командной строки
| --shared_memory_base_name=name |
Системная переменная
| Имя |
shared_memory_base_name |
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Windows |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
MYSQL |
Название совместно используемой памяти, чтобы использовать для соединений
совместно используемой памяти. Эта опция доступна только в Windows. Имя по
умолчанию MYSQL . Имя является чувствительным к регистру.
-
--skip-concurrent-insert
Выключить способность выбрать и вставить в то же самое время на
MyISAM . Это должно использоваться, только если Вы думаете, что
нашли ошибку в этой особенности. См.
раздел 9.11.3.
-
--skip-event-scheduler
Формат командной строки
| --skip-event-scheduler |
| --disable-event-scheduler
|
Переводит Event Scheduler в OFF .
Это не то же самое как отключение Event Scheduler, которое требует установки
--event-scheduler=DISABLED , см.
опцию
--event-scheduler .
-
--skip-grant-tables
Эта опция заставляет сервер запускаться, не используя систему привилегий
вообще, что дает любому неограниченный доступ ко всем базам данных.
Вы можете заставить рабочий сервер начинать использовать таблицы с помощью
mysqladmin
flush-privileges или
mysqladmin reload
из системной оболочки или командой MySQL
FLUSH PRIVILEGES после соединения с сервером.
Эта опция также заставляет сервер подавлять во время запуска загрузку
определяемых пользователем функций (UDF), намеченных событий и плагинов,
которые были установлены с
INSTALL PLUGIN .
Чтобы заставить плагины быть загруженными так или иначе, используйте опцию
--plugin-load
.
--skip-grant-tables также блокирует
disabled_storage_engines .
Эта опция не заставляет загрузку серверных компонентов быть подавленной
во время запуска сервера.
FLUSH PRIVILEGES
может быть выполнен неявно другими действиями, выполненными после запуска.
Например, mysql_upgrade
сбрасывает привилегии во время процедуры обновления.
-
--skip-host-cache
Отключить использование внутреннего кэша узла для более быстрого
разрешения имени к IP. В этом случае сервер выполняет поиск DNS каждый раз,
когда клиент соединяется. См. раздел
9.12.4.2.
Использование
--skip-host-cache подобно установке
host_cache_size
к 0, но host_cache_size
более гибко, потому что это может также использоваться, чтобы
изменить размеры, включить или отключить кэш узла во время выполнения, не
только при запуске сервера.
Если Вы запускаете сервер с
--skip-host-cache
, это не предотвращает изменения значения
host_cache_size ,
но такие изменения не имеют никакого эффекта, и кэш не включен повторно,
даже если host_cache_size
больше 0.
--skip-innodb
Отключить механизм хранения InnoDB .
В этом случае, потому что механизм хранения по умолчанию
InnoDB ,
сервер не будет запускаться, если Вы также не будете использовать
--default-storage-engine и
--default-tmp-storage-engine , чтобы установить значение по
умолчанию в некоторый другой механизм для постоянных и
для TEMPORARY таблиц.
Механизм хранения InnoDB не может быть отключен, и
--skip-innodb
устарела и не имеет никакого эффекта. Ее использование приводит к
предупреждению. Эта опция будет удалена в будущем выпуске MySQL.
-
--skip-name-resolve
Не решать имена хоста, проверяя соединения клиента.
Использовать только IP-адреса. Если Вы используете эту опцию, все столбцы
Host в таблицах привилегий должны быть IP-адресами. См.
раздел 9.12.4.2.
В зависимости от сетевой конфигурации Вашей системы и значения
Host для Ваших учетных записей, клиенты, возможно, должны
соединиться с использованием явной опции --host , например,
--host=127.0.0.1 или --host=::1 .
Попытка соединиться с узлом 127.0.0.1
обычно приводит к учетной записи localhost .
Однако, это терпит неудачу, если сервер выполнен с
--skip-name-resolve , так что удостоверьтесь, что учетная запись
существует, которая может принять соединение.
Например, чтобы быть в состоянии соединиться как root , используя
--host=127.0.0.1 или --host=::1 ,
создайте эти учетные записи:
CREATE USER 'root'@'127.0.0.1' IDENTIFIED BY 'root-password ';
CREATE USER 'root'@'::1' IDENTIFIED BY 'root-password ';
-
--skip-networking
Не слушать соединения TCP/IP вообще. Все взаимодействие с
mysqld
должно быть сделано, используя именованные каналы или совместно используемую
память (в Windows) или файлы сокетов Unix (в Unix). Эта опция настоятельно
рекомендована для систем, где только местным клиентам разрешают работать. См.
раздел 9.12.4.2.
--ssl*
Опции, которые начинаются с
--ssl , определяют, разрешить ли клиентам соединяться с
использованием SSL и указывают, где найти ключи SSL и сертификаты. См.
раздел 7.4.5.
-
--standalone
Формат командной строки
| --standalone |
Платформа |
Windows |
Только в Windows. Инструктирует сервер MySQL не работать как служба.
-
--super-large-pages
Формат командной строки
| --super-large-pages |
Платформа |
Solaris |
Допустимые значения
(Solaris) | Тип |
boolean |
Значение по умолчанию |
FALSE |
Стандартное использование больших страниц в MySQL пытается использовать
самый большой поддержанный размер до 4 МБ. В Solaris особенность
super large pages включает использование страниц до
256 МБ. Эта особенность доступна для недавних платформ SPARC. Это может быть
включено или отключено при использовании опций
--super-large-pages или
--skip-super-large-pages .
-
--symbolic-links
,
--skip-symbolic-links
Формат командной строки
| --symbolic-links |
Включить или отключить поддержку символьной ссылки. В Unix
включение символических ссылок означает, что Вы можете соединить опции
INDEX DIRECTORY или DATA DIRECTORY в
CREATE TABLE .
Если Вы удаляете или переименовываете таблицу, файлы, на которые указывают ее
символические ссылки, также удалены или переименованы. См.
раздел 9.12.2.2.
У этой опции нет никакого значения в Windows.
-
--skip-show-database
Формат командной строки
| --skip-show-database |
Системная переменная
| Имя |
skip_show_database |
Область действия |
Глобальная |
Динамическая |
Нет |
Эта опция устанавливает
skip_show_database , которая управляет, кому разрешают использовать
SHOW DATABASES . См.
раздел 6.1.5.
-
--skip-stack-trace
Формат командной строки
| --skip-stack-trace |
Не пишите трассировку стека. Эта опция полезна, когда Вы выполняете
mysqld
под отладчиком. На некоторых системах Вы также должны использовать эту опцию,
чтобы получить файл дампа. См. раздел 26.5.
-
--slow-query-log[={0|1}]
Формат командной строки
| --slow-query-log |
Системная переменная
| Имя |
slow_query_log |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Определите начальное состояние медленного журнала запроса. Без параметра
или с параметром 1
--slow-query-log включает журнал. Если опущена или дана с
параметром 0 опция отключает журнал.
-
--slow-start-timeout=timeout
Формат командной строки
| --slow-start-timeout=# |
Допустимые значения
(Windows) | Тип |
integer |
Значение по умолчанию |
15000 |
Эта опция управляет тайм-аутом запуска службы Windows.
Значение: максимальное количество миллисекунд, которое менеджер
по управлению службой ждет прежде, чем попытаться уничтожить службу во
время запуска. Значение по умолчанию 15000 (15 секунд). Если служба MySQL
слишком долго запускается, Вы, возможно, должны увеличить это значение.
Значение 0 отменяет тайм-аут.
-
--socket=path
Формат командной строки
| --socket={file_name|pipe_name}
|
Системная переменная
| Имя |
socket
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
/tmp/mysql.sock |
В Unix эта опция определяет файл сокета Unix для местных соединений.
Значение по умолчанию /tmp/mysql.sock .
Если эта опция дана, сервер создает файл в каталоге данных, если абсолютный
путь не дан, чтобы определить иной каталог. В Windows опция определяет имя
канала, чтобы использовать, слушая местные соединения, которые используют
названный канал. Значение по умолчанию MySQL
(не чувствительно к регистру).
-
--sql-mode=value
[,value [,value ...]]
Формат командной строки
| --sql-mode=name |
Системная переменная
| Имя |
sql_mode
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
set |
Значение по умолчанию |
ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE
NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_AUTO_CREATE_USER
NO_ENGINE_SUBSTITUTION |
Допустимые значения |
ALLOW_INVALID_DATES |
ANSI_QUOTES |
ERROR_FOR_DIVISION_BY_ZERO |
HIGH_NOT_PRECEDENCE |
IGNORE_SPACE |
NO_AUTO_CREATE_USER |
NO_AUTO_VALUE_ON_ZERO |
NO_BACKSLASH_ESCAPES |
NO_DIR_IN_CREATE |
NO_ENGINE_SUBSTITUTION |
NO_FIELD_OPTIONS |
NO_KEY_OPTIONS |
NO_TABLE_OPTIONS |
NO_UNSIGNED_SUBTRACTION |
NO_ZERO_DATE |
NO_ZERO_IN_DATE |
ONLY_FULL_GROUP_BY |
PAD_CHAR_TO_FULL_LENGTH |
PIPES_AS_CONCAT |
REAL_AS_FLOAT |
STRICT_ALL_TABLES |
STRICT_TRANS_TABLES |
Установить режим SQL. См. раздел 6.1.8.
Программы установки MySQL могут сконфигурировать режим SQL во
время процесса установки.
Если режим SQL отличается от значения по умолчанию или от того, что Вы
ожидаете, проверьте установку в файле опции, который сервер
читает при запуске.
--sysdate-is-now
Формат командной строки
| --sysdate-is-now |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
SYSDATE()
возвращает по умолчанию время, в которое это выполняется, а не время, в
которое запрос, в котором это происходит, начинает выполняться. Это
отличается от поведения NOW()
. Эта опция предписывает
SYSDATE() стать псевдонимом
NOW() . Для информации о значениях для двоичного
журналирования см. описание для
SYSDATE() в
разделе 13.7 и для
SET TIMESTAMP в
разделе 6.1.5.
-
--tc-heuristic-recover={COMMIT|ROLLBACK}
Формат командной строки
| --tc-heuristic-recover=name |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
COMMIT |
Допустимые значения |
COMMIT |
ROLLBACK |
Тип решения, которое использовать в эвристическом процессе восстановления.
Чтобы использовать эту опцию, два или больше механизма хранения, которые
поддерживают транзакции XA,
должны быть установлены.
-
--temp-pool
Формат командной строки
| --temp-pool |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
TRUE |
Эта опция заставляет большинство временных файлов, создаваемых сервером
использовать маленький набор имен, а не уникальное имя для каждого нового
файла. Это обходит проблему в ядре Linux, имеющую дело с созданием многих
новых файлов с различными именами. Со старым поведением Linux допускала
утечку памяти, потому что выделяла ее кэшу записи в каталоге, а не дисковому
кэшу. Эта опция проигнорирована везде, за исключением Linux.
-
--transaction-isolation=level
Формат командной строки
| --transaction-isolation=name |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
REPEATABLE-READ |
Допустимые значения |
READ-UNCOMMITTED |
READ-COMMITTED |
REPEATABLE-READ |
SERIALIZABLE |
Устанавливает операционный уровень изоляции по умолчанию.
level может быть
READ-UNCOMMITTED
, READ-COMMITTED
,
REPEATABLE-READ или
SERIALIZABLE . См.
раздел 14.3.6.
Операционный уровень изоляции по умолчанию может также быть установлен во
время выполнения, используя SET
TRANSACTION или переменную
tx_isolation .
-
--transaction-read-only
Формат командной строки
| --transaction-read-only |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Устанавливает операционный режим доступа по умолчанию. По умолчанию режим
только для чтения отключен, таким образом, режим чтение-запись.
Чтобы установить операционный режим доступа по умолчанию во время
выполнения, используйте SET
TRANSACTION или переменную
tx_read_only , см.
раздел 14.3.6.
-
--tmpdir=dir_name ,
-t dir_name
Формат командной строки
| --tmpdir=dir_name |
Системная переменная
| Имя |
tmpdir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Путь к каталогу, чтобы создать временные файлы.
Это могло бы быть полезно, если Ваше значение по умолчанию
/tmp находится на разделе, который слишком маленький, чтобы
держать временные таблицы. Эта опция принимает несколько путей, которые
используются круговым способом. Пути должны быть отделены символами двоеточия
(: ) в Unix и символом точки с запятой (; ) в
Windows. Если сервер MySQL действует как ведомое устройство, Вы не должны
установить --tmpdir
в каталог на основанной на памяти файловой системе или в каталог,
который очищен, когда сервер перезапускается. Для получения дополнительной
информации о местоположении хранения временных файлов см.
раздел B.5.3.5. Ведомое устройство
нуждается в некоторых из своих временных файлов, чтобы пережить машинный
перезапуск так, чтобы оно могло копировать временные таблицы или
LOAD DATA INFILE . Если файлы во
временном каталоге файла потеряны, когда сервер перезапускается,
репликация терпит неудачу.
-
--user={user_name
|user_id } ,
-u {user_name |user_id }
Формат командной строки
| --user=name |
Допустимые значения |
Тип |
string |
Выполнить mysqld
как пользователя, имеющего имя user_name
или числовой user ID user_id . User
в этом контексте обращается к системной учетной записи, а не к
пользователю MySQL, перечисленному в таблицах привилегий.
Эта опция принудительна, запуская
mysqld как
root . Сервер изменяет свой пользовательской ID во время запуска,
заставляя это работать как особый пользователь, а не как root .
См. раздел 7.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 .
-
--verbose ,
-v
Используйте эту опцию с
--help для подробной справки.
-
--version ,
-V
Информация о версии и выход.
6.1.5. Системные переменные сервера
Сервер MySQL поддерживает много системных переменных, которые указывают,
как он сконфигурирован. У каждой системной переменной есть значение по
умолчанию. Системные переменные могут быть установлены в опциях запуска
сервера в командной строке или в файле опции. Большинство из них может быть
изменено динамически во времени выполнения, используя
SET ,
который позволяет Вам изменить работу сервера, не имея необходимости
останавливать и перезапускать это. Установка глобального значения системной
переменной требует привилегии
SUPER .
Для некоторых системных переменных, устанавка значения сеанса также требует
привилегии SUPER ,
если так, это обозначено в описании переменной. Вы можете также использовать
системные значения переменной в выражениях.
Есть несколько способов видеть имена и значения системных переменных:
Чтобы видеть значения, которые сервер будет использовать
в значениях по умолчанию и любых файлах опции, которые он читает,
используйте эту команду:
mysqld --verbose --help
- Чтобы видеть значения, которые сервер будет использовать
в значениях по умолчанию, игнорируя настройки в любых файлах опции,
используйте эту команду:
mysqld --no-defaults --verbose --help
- Чтобы видеть текущее значение, используемое рабочим сервером, используйте
SHOW VARIABLES или
системные таблицы переменной в Performance Schema. См.
раздел 23.9.13
.
Этот раздел включает таблицу, которая перечисляет все системные
переменные и обеспечивает описание каждой. Переменные без обозначенной версии
присутствуют во всех выпусках MySQL 8.0. Для получения дополнительной
информации о манипуляции системными переменными см.
раздел 6.1.6.
Таблица 6.2. Системные переменные
Для дополнительной системной информации о переменной см. эти разделы:
Некоторые из следующих переменных описаний относятся к
включению или выключению
переменной. Эти переменные могут быть включены с
SET , устанавливая их в
ON или 1 , или отключены, устанавливая их в
OFF или 0 . Логические переменные могут быть
установлены при запуске в значения ON , TRUE ,
OFF и FALSE (не чувствительны к регистру), так же
как 1 и 0 . См.
раздел 5.2.5.
Некоторые системные переменные управляют размером буферов или кэшей.
Для данного буфера сервер, возможно, должен был бы выделить внутренние
структуры данных. Эти структуры, как правило, выделяются от полной памяти,
выделенной буферу, количество требуемого пространства может зависеть от
платформы. Это означает, что, когда Вы назначаете значение системной
переменной, которая управляет размером буфера, количество фактически
доступного пространства может отличаться от назначенного значения. В
некоторых случаях количество могло бы быть меньше, чем назначенное значение.
Также возможно, что сервер скорректирует значение вверх. Например, если Вы
назначите значение 0 переменной, для которой минимальное значение 1024, то
сервер установит значение в 1024.
Значения для буферных размеров, длин и размеров стека даны в байтах,
если иначе не определено.
Некоторые системные переменные берут значения имени файла. Если иначе не
определено, местоположение файла значения по умолчанию каталог данных, если
значение относительный путь. Чтобы определить местоположение явно,
используйте абсолютный путь. Предположите, что каталог данных
/var/mysql/data . Если оцененная к имени файла переменная будет
дана как относительный путь, то он будет расположен под
/var/mysql/data . Если значение абсолютный путь, его
местоположение дано путем.
autocommit
Формат командной строки
| --autocommit[=#] |
Системная переменная
| Имя |
autocommit
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
autocommit
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Режим autocommit. Если установлено в 1, все изменения таблицы немедленно
вступают в силу. Если установлено в 0, Вы должны использовать
COMMIT , чтобы принять транзакцию,
или ROLLBACK , чтобы отменить ее.
Если autocommit = 0
и Вы изменяете это на 1, MySQL выполняет автоматический
COMMIT любой открытой транзакции.
Другой способ начать транзакцию состоит в том, чтобы использовать
START TRANSACTION или
BEGIN , см.
раздел 14.3.1.
По умолчанию соединения клиента начинаются с
autocommit = 1.
Чтобы заставить клиентов начинать со значением по умолчанию 0, установите
глобальное значение autocommit
, запуская сервер с опцией
--autocommit=0 .
Чтобы установить переменную, используя файл опции, включите эти строки:
[mysqld]
autocommit=0
-
automatic_sp_privileges
Системная переменная
| Имя |
automatic_sp_privileges |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
TRUE |
Когда у этой переменной есть значение 1 (значение по умолчанию), сервер
автоматически предоставляет привилегии
EXECUTE и
ALTER ROUTINE
создателю сохраненной подпрограммы, если пользователь не может уже выполнить
и изменить или удалить ее. Привилегия
ALTER ROUTINE
нужна, чтобы ужадить подпрограмму. Сервер также автоматически удаляет эти
привилегии у создателя, когда подпрограмма удалена. Если
automatic_sp_privileges = 0,
сервер автоматически не добавляет или удаляет эти привилегии.
Создатель подпрограммы это учетная запись, используемая, чтобы выполнить
CREATE . Это может быть учетной записью, названной как
DEFINER в обычном определении. См.
раздел 21.2.2.
-
auto_generate_certs
Формат командной строки
| --auto_generate_certs[={OFF|ON}]
|
Системная переменная
| Имя |
auto_generate_certs |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Эта переменная доступна, если сервер был собран, используя OpenSSL (см.
раздел 7.4.1).
Это управляет, генерирует ли сервер ключ SSL и файлы сертификата в каталоге
данных, если они еще не существуют.
При запуске сервер автоматически производит сертификаты
SSL кдиента и сервера и ключевые файлы в каталоге данных, если
auto_generate_certs
включена, никакие опции SSL, кроме
--ssl не
определены, и файлы SSL сервера отсутствуют в каталоге данных.
Эти файлы включают безопасные соединения клиента, используя SSL, см.
раздел 7.4.4.
Для получения дополнительной информации о генерации
файла SSL, включая имена файла и характеристики, см.
раздел 7.4.6.1
sha256_password_auto_generate_rsa_keys связана, но управляет
генерацией файлов ключевой пары RSA, необходимых для безопасного обмена
паролями, использующего RSA по незащищенным соединениям.
-
avoid_temporal_upgrade
Устарела |
5.7.6 |
Формат командной строки
| --avoid_temporal_upgrade={OFF|ON} |
Системная переменная
| Имя |
avoid_temporal_upgrade |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная управляет тем, обновляет ли
ALTER TABLE
неявно временные столбцы, которые были в формате pre-5.6.4
(TIME ,
DATETIME и
TIMESTAMP
без поддержки дробной точности секунд). Обновление таких столбцов требует,
чтобы таблица была пересоздана, что предотвращает любое использование быстрых
изменений, которые могли бы иначе относиться к работе,
которая будет выполнена.
Эта переменная отключена по умолчанию. Включение предписывает
ALTER TABLE не пересоздавать
временные столбцы и таким образом быть в состоянии использовать в своих
интересах возможные быстрые изменения.
Эта переменная устарела и будет удалена в будущем выпуске MySQL.
-
back_log
Системная переменная
| Имя |
back_log
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
-1 (autosized) |
Минимум |
1 |
Максимум |
65535 |
Это играет роль, когда основной поток MySQL получает очень много запросов
соединения за очень короткое время. Это тогда занимает время
(хотя очень немного) для основного потока, чтобы проверить соединение и
начать обмен данными. back_log
указывает, сколько запросов может быть сложено в течение этого
короткого времени прежде, чем MySQL на мгновение прекратит отвечать на новые
запросы. Вы должны увеличить это, только если Вы ожидаете большое количество
соединений за короткий период времени.
Другими словами, это значение размер очереди для поступающих соединений
TCP/IP. У Вашей операционной системы есть свой собственный предел
этой очереди. Страница руководства для системного вызова Unix
listen() дает больше деталей. Проверьте свою документацию OS на
максимальное значение для этой переменной.
back_log
не может быть установлен выше чем Ваш предел операционной системы.
Значение по умолчанию основано на следующей формуле при максимуме в 900:
50 + (max_connections / 5)
-
basedir
Формат командной строки
| --basedir=dir_name |
Системная переменная
| Имя |
basedir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Основной каталог MySQL. Эта переменная может быть установлена с
--basedir .
Относительные пути для других переменных обычно решаются
относительно основного каталога.
-
big_tables
Формат командной строки
| --big-tables |
Системная переменная
| Имя |
big_tables
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
big_tables
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Если установлено в 1, все временные таблицы сохранены на диске, а не в
памяти. Это немного медленнее, но ошибка
The table tbl_name is full
не происходит для SELECT , которые
требуют большой временной таблицы. Значение по умолчанию для нового
соединения 0 (использовать временные таблицы в памяти). Обычно Вы никогда не
должны устанавливать эту переменную, потому что таблицы в памяти
автоматически преобразованы в таблицы на диске, когда требуется.
-
bind_address
Формат командной строки
| --bind-address=addr |
Системная переменная
| Имя |
bind_address
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
* |
Значение опции
--bind-address .
Эта переменная не имеет никакого эффекта для встроенного сервера
(libmysqld ) и не видна в пределах встроенного сервера.
-
block_encryption_mode
Формат командной строки
| --block_encryption_mode=# |
Системная переменная
| Имя |
block_encryption_mode |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
aes-128-ecb |
Эта переменная управляет режимом блочного шифрования для основанных на
блоке алгоритмов, таких как AES. Это затрагивает шифрование для
AES_ENCRYPT() и
AES_DECRYPT() .
block_encryption_mode принимает значение в формате
aes-keylen -mode , где
keylen длина ключа в битах и mode
режим шифрования. Значение не является чувствительным к регистру. Разрешенные
значения для keylen 128, 192 и 256.
Разрешенные режимы шифрования зависят от того, был ли MySQL собран, используя
OpenSSL или yaSSL:
Для OpenSSL mode :
ECB , CBC , CFB1 ,
CFB8 , CFB128 , OFB .
- Для yaSSL
mode : ECB , CBC .
Например, это запрос заставляет функции шифрования AES использовать длину
ключа в 256 бит и режим CBC:
SET block_encryption_mode = 'aes-256-cbc';
Ошибка происходит для попыток установить
block_encryption_mode
к значению, содержащему неподдержанную длину ключа или режим,
который не поддерживает библиотека SSL.
-
bulk_insert_buffer_size
Формат командной строки
| --bulk_insert_buffer_size=# |
Системная переменная
| Имя |
bulk_insert_buffer_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
8388608 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
8388608 |
Минимум |
0 |
Максимум |
18446744073709551615 |
MyISAM использует специальный подобный дереву кэш,
чтобы сделать большую вставку быстрее для
INSERT ... SELECT ,
INSERT ... VALUES (...), (...), ... и
LOAD DATA INFILE ,
добавляя данные к непустым таблицам. Эта переменная ограничивает размер
дерева кэша в байтах на поток. Установка этого к 0 отключает эту оптимизацию.
Значение по умолчанию составляет 8 МБ.
-
character_set_client
Системная переменная
| Имя |
character_set_client |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Набор символов для запросов, которые прибывают от клиента. Значение сеанса
этой переменной установлено, используя набор символов, который требует
клиент, когда клиент соединяется с сервером. Много клиентов поддерживают
опцию --default-character-set , чтобы позволить этому набору
символов, который будет определен явно. См. также
раздел 11.1.4.
Глобальное значение переменной используется, чтобы установить значение сеанса
в случаях, когда требуемое клиентом значение неизвестно или не доступно, или
сервер сконфигурирован, чтобы проигнорировать запросы клиента:
ucs2 , utf16 , utf16le и
utf32 не может использоваться в качестве набора символов
клиента, что означает, что они также не работают для
SET NAMES или
SET CHARACTER SET .
-
character_set_connection
Системная переменная
| Имя |
character_set_connection |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Набор символов для литералов, у которых нет набора символов
и для преобразования числа к строке. Для информации см.
раздел 11.1.3.8.
-
character_set_database
Системная переменная
| Имя |
character_set_database |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Footnote |
Да |
Допустимые значения |
Тип |
string |
Набор символов используется базой данных значения по умолчанию.
Сервер устанавливает эту переменную всякий раз, когда база данных по
умолчанию изменяется. Если нет никакой базы данных по умолчанию, у переменной
есть то же самое значение, как у
character_set_server
.
Глобальные перменные
character_set_database и
collation_database
устарели и будут удалены в будущей версии MySQL.
Назначение значения к сеансовым перменным
character_set_database и
collation_database устарело, и назначения производят
предупреждение. Переменные сеанса станут только для чтения в будущей версии
MySQL, и назначения произведут ошибку. Останется возможным получить доступ к
переменным сеанса, чтобы определить набор символов базы данных и
сопоставление для базы данных по умолчанию.
-
character_set_filesystem
Формат командной строки
| --character-set-filesystem=name
|
Системная переменная
| Имя |
character_set_filesystem |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
binary |
Набор символов файловой системы. Эта переменная используется, чтобы
интерпретировать строковые литералы, которые обращаются к именам файла, как
в LOAD DATA INFILE и
SELECT ... INTO OUTFILE и
функции LOAD_FILE() .
Такие имена файла преобразованы из
character_set_client в
character_set_filesystem
прежде, чем попытка открытия файла происходит. Значение по умолчанию
binary , что означает, что никакое преобразование не происходит.
Для систем, на которых разрешены имена файла в мультибайтном наборе символов,
иное значение может быть более соответствующим. Например, если система
представляет имена файла, используя UTF-8, установите
character_set_filesystem в 'utf8' .
-
character_set_results
Системная переменная
| Имя |
character_set_results |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Набор символов, используемый для того, чтобы возвратить результат запроса
или сообщения об ошибках клиенту.
-
character_set_server
Формат командной строки
| --character-set-server |
Системная переменная
| Имя |
character_set_server |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
latin1 |
Набор символов по умолчанию сервера.
-
character_set_system
Системная переменная
| Имя |
character_set_system |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
utf8 |
Набор символов используется сервером для того, чтобы сохранить
идентификаторы. Значение всегда utf8 .
-
character_sets_dir
Формат командной строки
| --character-sets-dir=dir_name
|
Системная переменная
| Имя |
character_sets_dir |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Каталог, где наборы символов установлены.
-
check_proxy_users
Формат командной строки
| --check_proxy_users=[={OFF|ON}]
|
Системная переменная
| Имя |
check_proxy_users |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная управляет, выполняет ли сервер пользователя по
доверенности, отображающегося для плагинов аутентификации, которые просят
это. С check_proxy_users
может также быть необходимо позволить определенным для плагина
системным переменным использовать пользователя полномочия
сервера, отображающего поддержку:
См. раздел 7.3.10.
-
collation_connection
Системная переменная
| Имя |
collation_connection |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Сопоставление набора символов соединения.
-
collation_database
Системная переменная
| Имя |
collation_database |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Footnote |
Да |
Допустимые значения |
Тип |
string |
Сопоставление используется базой данных по умолчанию. Сервер устанавливает
эту переменную всякий раз, когда база данных по умолчанию изменяется. Если
нет никакой базы данных по умолчанию, у переменной есть то же самое значение,
как у collation_server
.
Глобальные переменные
character_set_database и
collation_database
устарели и будут удалены в будущей версии MySQL.
Назначение значения к сеансовым перменным
character_set_database и
collation_database
устарело, и назначения производят предупреждение. Переменные
сеанса станут только для чтения в будущей версии MySQL, и назначения
произведут ошибку. Останется возможным получить доступ к переменным сеанса,
чтобы определить набор символов базы данных и сопоставление для базы
данных по умолчанию.
-
collation_server
Формат командной строки
| --collation-server |
Системная переменная
| Имя |
collation_server |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
latin1_swedish_ci |
Сопоставление по умолчанию сервера.
-
completion_type
Формат командной строки
| --completion_type=# |
Системная переменная
| Имя |
completion_type |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
NO_CHAIN |
Допустимые значения |
NO_CHAIN |
CHAIN |
RELEASE |
0 |
1 |
2 |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
NO_CHAIN |
Допустимые значения |
NO_CHAIN |
CHAIN |
RELEASE |
0 |
1 |
2 |
Операционный тип завершения. Эта переменная может взять значения,
показанные в следующей таблице. Переменная может быть назначена, используя
значения имени или соответствующие целочисленные значения.
Значение | Описание |
NO_CHAIN (0) |
COMMIT и
ROLLBACK не работают.
Это значение по умолчанию. |
CHAIN (1) |
COMMIT и
ROLLBACK эквивалентны
COMMIT AND CHAIN и ROLLBACK AND CHAIN ,
соответственно. Новая транзакция немедленно запускается с того же самого
уровня изоляции, как только что законченная транзакция. |
RELEASE (2) |
COMMIT и
ROLLBACK эквивалентны
COMMIT RELEASE и ROLLBACK RELEASE , соответственно.
Сервер разъединяет соединение после завершения транзакции.
|
completion_type
затрагивает транзакции, которые начинаются с
START TRANSACTION или
BEGIN и заканчиваются
COMMIT или
ROLLBACK .
Это не относится к неявным завершениям, которые могут следовать из выполнения
запросов, перечисленных в разделе 14.3.3
. Это также не применяется к
XA COMMIT ,
XA ROLLBACK или при
autocommit=1 .
-
concurrent_insert
Формат командной строки
| --concurrent_insert[=#] |
Системная переменная
| Имя |
concurrent_insert |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
AUTO |
Допустимые значения |
NEVER |
AUTO |
ALWAYS |
0 |
1 |
2 |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
AUTO |
Допустимые значения |
NEVER |
AUTO |
ALWAYS |
0 |
1 |
2 |
Если AUTO (значение по умолчанию), MySQL разрешает
INSERT и
SELECT работать одновременно на
MyISAM , у которых нет никаких свободных блоков в середине файла
с данными. Если Вы запускаете
mysqld с
--skip-new ,
эта переменная установлена в NEVER .
Эта переменная может взять значения, показанные в следующей таблице.
Переменная может быть назначена, используя значения имени или
соответствующие целочисленные значения.
Значение |
Описание |
NEVER (0) |
Отключает параллельные вставки. |
AUTO (1) | Значение по умолчанию.
Включает параллельные вставки для MyISAM , у
которых нет промежутков. |
ALWAYS (2) |
Включает параллельные вставки для всех таблиц MyISAM .
Для таблицы с промежутком новые строки вставлены в конце таблицы, если она
используется другим потоком. Иначе MySQL приобретает нормальную блокировку
записи и вставляет строку в промежуток. |
См. раздел 9.11.3.
-
connect_timeout
Формат командной строки
| --connect_timeout=# |
Системная переменная
| Имя |
connect_timeout |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
10 |
Минимум |
2 |
Максимум |
31536000 |
Число секунд, которое mysqld
ждет пакет перед ответом Bad handshake .
Значение по умолчанию составляет 10 секунд.
Увеличение
connect_timeout могло бы помочь, если клиенты часто сталкиваются с
ошибками формы Lost connection to MySQL server at 'XXX
', system error: errno .
-
core_file
Системная переменная
| Имя |
core_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Написать ли файл дампа, если сервер отказывает. Эта переменная установлена
опцией --core-file
.
-
datadir
Формат командной строки
| --datadir=dir_name |
Системная переменная
| Имя |
datadir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Каталог данных MySQL. Эта переменная может быть установлена с опцией
--datadir .
-
date_format
Эта переменная не использована. Это устарело и будет удалено в
будущем выпуске MySQL.
-
datetime_format
Эта переменная не использована. Это устарело и будет удалено в
будущем выпуске MySQL.
-
debug
Формат командной строки
| --debug[=debug_options] |
Системная переменная
| Имя |
debug
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(Unix) | Тип |
string |
Значение по умолчанию |
d:t:i:o,/tmp/mysqld.trace |
Допустимые значения
(Windows) | Тип |
string |
Значение по умолчанию |
d:t:i:O,\mysqld.trace |
Эта переменная указывает на текущие настройки отладки.
Это доступно только для серверов, созданных с поддержкой отладки.
Начальное значение прибывает из значения экзепляров опции
--debug , данных при
запуске сервера. Глобальные значения и значения сеанса могут быть установлены
во время выполнения, для этого нужна привилегия
SUPER .
Назначение значения, которое начинается с + или
- добавляет или вычитает из текущего значения:
mysql> SET debug = 'T';
mysql> SELECT @@debug;
+---------+
| @@debug |
+---------+
| T |
+---------+
mysql> SET debug = '+P';
mysql> SELECT @@debug;
+---------+
| @@debug |
+---------+
| P:T |
+---------+
mysql> SET debug = '-P';
mysql> SELECT @@debug;
+---------+
| @@debug |
+---------+
| T |
+---------+
См. раздел 26.5.3.
-
debug_sync
Системная переменная
| Имя |
debug_sync
|
Область действия |
Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
debug_sync
|
Область действия |
Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Эта переменная пользовательский интерфейс к средству Debug Sync.
Использование Debug Sync требует, чтобы MySQL был сконфигурирован с опцией
-DENABLE_DEBUG_SYNC=1 в CMake (см.
раздел 2.8.4). Если
Debug Sync не собран, эта системная переменная недоступна.
Глобальное переменное значение только для чтения и указывает, включено ли
средство. По умолчанию Debug Sync отключена и значение
debug_sync
OFF . Если сервер запущен с
--debug-sync-timeout=N , где
N значение тайм-аута больше 0, Debug Sync
включено, и значение
debug_sync ON - current signal ,
сопровождаемое именем сигнала. Кроме того, N
становится тайм-аутом по умолчанию для отдельных пунктов синхронизации.
Значение сеанса может быть считано любым пользователем и будет иметь то же
самое значение как глобальная переменная. Значение сеанса может быть
установлено пользователями, которые имеют привилегию
SUPER , чтобы
управлять пунктами синхронизации.
Для описания средства Debug Sync и как использовать пункты синхронизации
см. MySQL Internals: Test Synchronization.
-
default_authentication_plugin
Формат командной строки
| --default-authentication-plugin=plugin_name
|
Системная переменная
| Имя |
default_authentication_plugin |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
mysql_native_password |
Допустимые значения |
mysql_native_password |
sha256_password |
Плагин аутентификации по умолчанию. Разрешенные значения
mysql_native_password (использует пароли MySQL, это значение по
умолчанию) и sha256_password (использует пароли SHA-256). См.
разделы 7.5.1.1 и
7.5.1.2.
Если Вы используете эту переменную, чтобы изменить плагин аутентификации
по умолчанию на значение кроме mysql_native_password ,
клиенты старше MySQL 5.5.6 больше не будут в состоянии соединиться, потому
что они не будут понимать получающегося изменения протокола аутентификации.
Значение
default_authentication_plugin влияет на эти
аспекты работы сервера:
Это определяет, какой плагин аутентификации сервер назначает на
новые учетные записи, создаваемые CREATE
USER и GRANT , которые не
называют плагин явно с IDENTIFIED WITH .
- Это устанавливает
old_passwords при запуске к значению, которое совместимо с методом
хеширования пароля, требуемым плагином по умолчанию.
old_passwords
влияет на значения хеширования паролей, определенных в IDENTIFIED BY
CREATE USER и
GRANT , а также пароли, определенные
как параметр функции PASSWORD()
.
- Для учетной записи, создаваемой с любым из следующих запросов, сервер
связывает учетную запись с плагином аутентификации по умолчанию и назначает
учетной записи данный пароль, хешированный согласно значению
old_passwords .
CREATE USER ... IDENTIFIED BY 'cleartext password ';
GRANT ... IDENTIFIED BY 'cleartext password ';
- Для учетной записи, создаваемой с любым из следующих запросов, запрос
терпит неудачу, если хеш пароля не зашифрован, используя формат хеша,
требуемый плагином аутентификации по умолчанию. Иначе сервер связывает
учетную запись с плагином аутентификации по умолчанию и назначает учетной
записи данный хеш пароля.
CREATE USER ... IDENTIFIED BY PASSWORD 'encrypted password ';
GRANT ... IDENTIFIED BY PASSWORD 'encrypted password ';
default_password_lifetime
Формат командной строки
| --default_password_lifetime=#
|
Системная переменная
| Имя |
default_password_lifetime |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
65535 |
Эта переменная определяет глобальную автоматическую политику истечения
пароля. Это относится к учетным записям, которые используют встроенные
методы аутентификации MySQL (учетные записи, которые используют плагин
аутентификации mysql_native_password
или sha256_password ).
По умолчанию
default_password_lifetime = 0, что
отключает автоматическое истечение пароля. Если значение
default_password_lifetime положительное целое число
N , это указывает на разрешенное время жизни пароля,
пароли должны быть изменены каждые N дней.
Глобальная политика истечения пароля может быть переопределена как надо
для отдельных учетных записей, используя ALTER USER , см.
раздел 7.3.7.
-
default_storage_engine
Формат командной строки
| --default-storage-engine=name
|
Системная переменная
| Имя |
default_storage_engine |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
InnoDB |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
MyISAM |
Механизм хранения по умолчанию. Эта переменная устанавливает механизм
хранения только для постоянных таблиц. Установить механизм хранения для
таблиц TEMPORARY можно через переменную
default_tmp_storage_engine .
Чтобы видеть, какие механизмы хранения доступны и включены, используйте
the SHOW ENGINES или
запросите таблицу ENGINES
в базе данных INFORMATION_SCHEMA .
Если Вы отключаете механизм хранения по умолчанию при запуске сервера, Вы
должны установить механизм по умолчанию для постоянных и для
TEMPORARY таблиц к иному механизму, или сервер
не будет запускаться.
-
default_tmp_storage_engine
Формат командной строки
| --default_tmp_storage_engine=name
|
Системная переменная
| Имя |
default_tmp_storage_engine |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
InnoDB |
Механизм хранения по умолчанию для таблиц TEMPORARY
(создаваемых с CREATE TEMPORARY
TABLE ). Чтобы установить механизм хранения для постоянных таблиц,
установите
default_storage_engine . Также см. обсуждение той переменной
относительно возможных значений.
-
default_week_format
Формат командной строки
| --default_week_format=# |
Системная переменная
| Имя |
default_week_format |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
7 |
Значение режима по умолчанию, чтобы использовать для функции
WEEK() , см.
раздел 13.7.
-
delay_key_write
Формат командной строки
| --delay-key-write[=name] |
Системная переменная
| Имя |
delay_key_write |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
ON |
Допустимые значения |
ON |
OFF |
ALL |
Эта опция применяется только к MyISAM .
У этого может быть одно из следующих значений, чтобы затронуть обработку
опции DELAY_KEY_WRITE таблицы, которая может использоваться в
CREATE TABLE .
Опция | Описание |
OFF |
DELAY_KEY_WRITE игнорируется. |
ON |
MySQL использует любую опцию DELAY_KEY_WRITE , определенную в
CREATE TABLE .
Это значение по умолчанию. |
ALL |
Все новые открытые таблицы обработаны, как будто они создавались с
включенной опцией DELAY_KEY_WRITE . |
Если DELAY_KEY_WRITE включен для таблицы, ключевой буфер не
сбрасывается для таблицы на каждом обновлении индекса, а только когда таблица
закрыта. Это убыстряет запись большого числа ключей, но если Вы используете
эту функцию, Вы должны добавить автоматическую проверку всех таблиц
MyISAM , запуская сервер с
--myisam-recover-options (например,
--myisam-recover-options=BACKUP,FORCE ).
См. разделы 6.1.4 и
17.2.1.
Если Вы включаете внешнюю блокировку с
--external-locking , нет никакой защиты от повреждения индекса для
таблиц, которые используют отсроченную запись ключа.
delayed_insert_limit
Устарела |
5.6.7 |
Формат командной строки
| --delayed_insert_limit=# |
Системная переменная
| Имя |
delayed_insert_limit |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
100 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
100 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Эта системная переменная устарела (потому что DELAYED вставки
уже не поддержаны) и будет удалена в будущем выпуске.
-
delayed_insert_timeout
Устарела |
5.6.7 |
Формат командной строки
| --delayed_insert_timeout=# |
Системная переменная
| Имя |
delayed_insert_timeout |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
300 |
Эта системная переменная устарела (потому что DELAYED вставки
уже не поддержаны) и будет удалена в будущем выпуске.
-
delayed_queue_size
Устарела |
5.6.7 |
Формат командной строки
| --delayed_queue_size=# |
Системная переменная
| Имя |
delayed_queue_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
1000 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
1000 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Эта системная переменная устарела (потому что DELAYED вставки
уже не поддержаны) и будет удалена в будущем выпуске.
-
disabled_storage_engines
Формат командной строки
| --disabled_storage_engines=engine[,
engine]... |
Системная переменная
| Имя |
disabled_storage_engines |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
empty string |
Эта переменная указывает, какие механизмы хранения не могут
использоваться, чтобы составить таблицы или табличные пространства. Например,
чтобы предотвратить создание новых таблиц
MyISAM или FEDERATED ,
запустите сервер с этими строками в файле параметра сервера:
[mysqld]
disabled_storage_engines="MyISAM,FEDERATED"
По умолчанию
disabled_storage_engines пуста (никакие механизмы не отключены),
но это может быть установлено в список разделенных запятой значений из одного
или более механизмов (не чувствительный к регистру). Любой механизм,
названный в значении, не может использоваться, чтобы составить таблицы или
табличные пространства с CREATE
TABLE или CREATE
TABLESPACE и не может использоваться с
ALTER TABLE ... ENGINE или
ALTER TABLESPACE ... ENGINE , чтобы
изменить механизм хранения существующих таблиц или табличных пространств.
Попытки сделать это приведут к ошибке
ER_DISABLED_STORAGE_ENGINE .
disabled_storage_engines не ограничивает другие запросы DDL для
существующих таблиц, например,
CREATE INDEX ,
TRUNCATE TABLE ,
ANALYZE TABLE ,
DROP TABLE или
DROP TABLESPACE .
Это разрешает гладкий переход так, чтобы существующие таблицы или табличные
пространства, которые используют отключенный механизм, могли мигрировать к
разрешенному механизму средствами ALTER
TABLE ... ENGINE permitted_engine .
Разрешено установить
default_storage_engine или
default_tmp_storage_engine к механизму хранения, который отключен.
Это может заставить приложения вести себя беспорядочно или терпеть неудачу,
хотя это могло бы быть полезным методом в среде проектирования для того,
чтобы идентифицировать приложения, которые используют отключенные механизмы,
так, чтобы они могли быть изменены.
disabled_storage_engines отключен и не имеет никакого эффекта,
если сервер запущен с какой-либо из этих опций: --initialize ,
--initialize-insecure , --skip-grant-tables .
-
disconnect_on_expired_password
Формат командной строки
| --disconnect_on_expired_password[=#]
|
Системная переменная
| Имя |
disconnect_on_expired_password |
Область действия |
Сеансовая |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Эта переменная управляет, как сервер обрабатывает клиентов с
паролями с истекшим сроком:
Если клиент указывает, что он может обработать истекший пароль,
значение
disconnect_on_expired_password не важно. Сервер разрешает клиенту
соединяться, но помещает его в режим песочницы.
- Если клиент не указывает, что это может обработать истекший пароль,
сервер обрабатывает клиента согласно значению
disconnect_on_expired_password :
См. раздел 7.3.8
.
-
div_precision_increment
Формат командной строки
| --div_precision_increment=# |
Системная переменная
| Имя |
div_precision_increment |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
4 |
Минимум |
0 |
Максимум |
30 |
Эта переменная указывает на число цифр, которыми можно увеличить масштаб
результата операций разделения, выполненных с оператором
/ .
Значение по умолчанию 4. Минимальные и максимальные значения 0 и 30,
соответственно. Следующий пример иллюстрирует эффект увеличения
значения по умолчанию.
mysql> SELECT 1/7;
+--------+
| 1/7 |
+--------+
| 0.1429 |
+--------+
mysql> SET div_precision_increment = 12;
mysql> SELECT 1/7;
+----------------+
| 1/7 |
+----------------+
| 0.142857142857 |
+----------------+
-
end_markers_in_json
Системная переменная
| Имя |
end_markers_in_json |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Должен ли оптимизатор JSON добавить маркеры конца.
-
eq_range_index_dive_limit
Системная переменная
| Имя |
eq_range_index_dive_limit |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
200 |
Минимум |
0 |
Максимум |
4294967295 |
Эта переменная указывает на число диапазонов равенства в условии сравнения
равенства, когда оптимизатор должен переключиться с использования индексного
погружения на индексную статистику в оценке числа готовящихся строк. Это
относится к оценке выражений, у которых есть любая из этих эквивалентных
форм, где оптимизатор использует групповой индекс, чтобы искать
значения col_name :
col_name IN(val1 , ..., valN )
col_name = val1 OR ... OR
col_name = valN
В обоих случаях выражение содержит N
диапазонов равенства. Оптимизатор может заставить оценку строки
использовать индексные погружения или индексную статистику. Если
eq_range_index_dive_limit больше 0, оптимизатор
использует существующую индексную статистику вместо индексного погружения,
если есть
eq_range_index_dive_limit или больше диапазонов равенства. Таким
образом, чтобы разрешить использование индексное погружение для до
N диапазонов равенства, установите
eq_range_index_dive_limit в N +1.
Чтобы отключить использование индексной статистики и всегда использовать
индексное погружение независимо от N , установите
eq_range_index_dive_limit в 0.
См. раздел 9.2.1.3.3
.
Чтобы обновить индексную статистику таблицы
для наилучших оценок, используют
ANALYZE TABLE .
-
error_count
Число ошибок, которые следовали из последнего запроса, который произвел
сообщения. Эта переменная только для чтения. См.
раздел 14.7.5.17.
-
event_scheduler
Формат командной строки
| --event-scheduler[=value] |
Системная переменная
| Имя |
event_scheduler |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
OFF |
Допустимые значения |
ON |
OFF |
DISABLED |
Эта переменная указывает на состояние Event Scheduler:
возможные значения ON , OFF и DISABLED ,
по умолчанию OFF . Эта переменная и ее эффекты на работу Event
Scheduler обсуждены более подробно
здесь.
-
expire_logs_days
Формат командной строки
| --expire_logs_days=# |
Системная переменная
| Имя |
expire_logs_days |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
99 |
Число дней для автоматического удаления двоичного файла системного
журнала. Значение по умолчанию 0, что означает, что
никакого автоматического удаления нет.
Возможные удаления происходят при запуске и когда двоичный журнал
сбрасывается. Сброс журнала происходит как обозначено в
разделе 6.4.
Чтобы удалить двоичные файлы системного журнала вручную, используйте
PURGE BINARY LOGS , см.
раздел 14.4.1.1.
-
explicit_defaults_for_timestamp
Устарела |
5.6.6 |
Формат командной строки
| --explicit_defaults_for_timestamp=#
|
Системная переменная
| Имя |
explicit_defaults_for_timestamp |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
В MySQL тип данных TIMESTAMP
отличается нестандартными способами от других типов данных:
Столбцам TIMESTAMP ,
не объявленным явно с NULL , назначен признак NOT NULL
. Столбцы других типов данных, если не объявлены явно как
NOT NULL , допускают значения NULL . Установка такого
столбца к NULL установит это к текущему timestamp.
- Первый столбец
TIMESTAMP
в таблице, если не объявлен с NULL или явным параметром
DEFAULT или ON UPDATE , автоматически назначен
как DEFAULT CURRENT_TIMESTAMP и
ON UPDATE CURRENT_TIMESTAMP .
- Cтолбцы
TIMESTAMP
после первого, если не объявлены с NULL или явным
DEFAULT , автоматически назначены
DEFAULT '0000-00-00 00:00:00'
(нулевой timestamp).
Для вставленных строк, которые не определяют явного значения для такого
столбца, назначено '0000-00-00 00:00:00' , но
никакого предупреждения не происходит.
Эти нестандартные поведения остаются значением по умолчанию для
TIMESTAMP , но с MySQL 5.6.6
устарели, и это предупреждение появляется при запуске:
[Warning] TIMESTAMP with implicit DEFAULT value is deprecated.
Please use --explicit_defaults_for_timestamp server option (see
documentation for more details).
Как обозначено предупреждением, чтобы выключить нестандартные поведения,
включают
explicit_defaults_for_timestamp при запуске сервера. С этой
включенной переменной, сервер обрабатывает
TIMESTAMP следующим образом вместо этого:
Столбцы TIMESTAMP ,
не объявленные явно как NOT NULL могут быть NULL .
Установка такого столбца к NULL , установит его именно к
NULL , а не к текущему timestamp.
- Нет столбцов
TIMESTAMP ,
которым назначено DEFAULT CURRENT_TIMESTAMP или
ON UPDATE CURRENT_TIMESTAMP автоматически. Эти признаки должны
быть явно определены.
- Столбцы
TIMESTAMP ,
объявленные как NOT NULL и без явного DEFAULT
обработаны как не имеющие значения по умолчанию. Для вставленных строк,
которые не определяют явного значения для такого столбца, результат зависит
от режима SQL. Если строгий режим SQL включен, ошибка происходит. Если
строгий режим SQL не включен, столбцу назначают неявное значение по умолчанию
'0000-00-00 00:00:00' и предупреждение происходит. Это подобно
тому, как MySQL обрабатывает другие временные типы, например,
DATETIME .
explicit_defaults_for_timestamp
самостоятельно устарела, потому что ее единственная цель состоит в том, чтобы
разрешить управление устаревшей логикой
TIMESTAMP , которая будет
удалена в будущем выпуске MySQL. Когда это удаление произойдет,
explicit_defaults_for_timestamp не будет иметь никакой цели и
будет удалена также.
external_user
Системная переменная
| Имя |
external_user
|
Область действия |
Сеансовая |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Внешнее имя пользователя, используемое во время процесса аутентификации,
как установлено плагином, чтобы подтверждать подлинность клиента.
С родной (встроенной) аутентификацией MySQL, или если плагин не устанавливает
значение, эта переменная NULL . См.
раздел 7.3.10.
-
flush
Формат командной строки
| --flush |
Системная переменная
| Имя |
flush |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Если ON , сервер сбрасывает все изменения на диск после
каждого запроса SQL. Обычно MySQL делает запись всех изменений диска только
после каждого запроса SQL и позволяет операционной системе обрабатывать
синхронизацию с диском. См. раздел B.5.3.3.
Эта переменная установлена в ON если Вы запускаете
mysqld с
опцией --flush .
-
flush_time
Формат командной строки
| --flush_time=# |
Системная переменная
| Имя |
flush_time
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Допустимые значения
(Windows) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Если это установлено в ненулевое значение, все таблицы закрыты каждые
flush_time секунд,
чтобы освободить ресурсы и синхронизировать данные с диском. Эта опция лучше
всего используется только на системах с минимальными ресурсами.
-
foreign_key_checks
Если установлено в 1 (значение по умолчанию), ограничения внешнего ключа
для InnoDB проверены. Если установлено в 0, ограничения внешнего
ключа проигнорированы, с несколькими исключениями. Обновляя таблицу, которая
была удалена, ошибка возвращена, если табличное определение не соответствует
ограничениям внешнего ключа, ссылающимся на таблицу. Аналогично,
ALTER TABLE
возвращает ошибку, если определение внешнего ключа неправильно сформировано.
Для получения дополнительной информации см.
раздел 14.1.15.3.
Как правило, эта установка включена во время нормального функционирования,
чтобы провести в жизнь
ссылочную целостность.
Отключение проверки внешнего ключа может быть полезным для перезагрузки
таблиц InnoDB в порядке, отличающемся от требуемого их
родительскими/дочерними отношениями. См.
раздел 16.8.6.
Установка foreign_key_checks в 0 также влияет на запросы
определения данных: DROP SCHEMA
удаляет схему, даже если это содержит таблицы, у которых есть внешние
ключи, которые упомянуты таблицами вне схемы, и
DROP TABLE удаляет таблицы, у которых есть внешние ключи,
которые упомянуты другими таблицами.
Установка foreign_key_checks в 1 не вызывает просмотр
существующих табличных данных. Поэтому, строки, добавленные к таблице в то
время, как
foreign_key_checks = 0 не будут проверены для последовательности.
Удаление индексирования необходимого ограничением внешнего ключа не
разрешено, даже с
foreign_key_checks=0 . Ограничение внешнего ключа должно быть
удалено прежде, чем удалить индексирование.
ft_boolean_syntax
Формат командной строки
| --ft_boolean_syntax=name |
Системная переменная
| Имя |
ft_boolean_syntax |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
+ -><()~*:""&| |
Список операторов, поддержанных булевыми полнотекстовыми поисками,
выполненными, используя IN BOOLEAN MODE . См.
раздел 13.9.2.
Значение переменной по умолчанию
'+ -><()~*:""&|' .
Правила для того, чтобы изменить значение следующие:
ft_max_word_len
Формат командной строки
| --ft_max_word_len=# |
Системная переменная
| Имя |
ft_max_word_len |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Минимум |
10 |
Максимальная длина слова, которое будет включено в
индекс MyISAM FULLTEXT .
Индексы FULLTEXT на MyISAM
должны быть пересозданы после изменения этой переменной. Используйте
REPAIR TABLE tbl_name QUICK .
ft_min_word_len
Формат командной строки
| --ft_min_word_len=# |
Системная переменная
| Имя |
ft_min_word_len |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
4 |
Минимум |
1 |
Минимальная длина слова, которое будет включено в
индекс MyISAM FULLTEXT .
Индексы FULLTEXT на MyISAM должны быть
пересозданы после изменения этой переменной. Используйте
REPAIR TABLE tbl_name QUICK .
ft_query_expansion_limit
Формат командной строки
| --ft_query_expansion_limit=# |
Системная переменная
| Имя |
ft_query_expansion_limit |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
20 |
Минимум |
0 |
Максимум |
1000 |
Число главных соответствий, чтобы использовать для полнотекстовых поисков,
выполненных, используя WITH QUERY EXPANSION .
-
ft_stopword_file
Формат командной строки
| --ft_stopword_file=file_name
|
Системная переменная
| Имя |
ft_stopword_file |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Файл, из которого можно считать список стоп-слов
для полнотекстовых поисков на MyISAM .
Сервер ищет файл в каталоге данных, если абсолютный путь не дан, чтобы
определить иной каталог. Все слова из файла используются, комментарии
не позволены. По умолчанию, встроенный список
стоп-слов используется (как определено в файле
storage/myisam/ft_static.c ).
Установка этой переменной к пустой строке ('' )
отключает фильтрацию стоп-слов. См.
раздел 13.9.4.
Индексы FULLTEXT на MyISAM должны быть
пересозданы после изменения этой переменной или содержимого файла стоп-слов.
Используйте REPAIR TABLE tbl_name QUICK .
general_log
Формат командной строки
| --general-log |
Системная переменная
| Имя |
general_log
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включен ли общий журнал запроса. Значение может быть 0 (или
OFF ), чтобы отключить журнал, или 1 (или ON ), чтобы
включить журнал. Значение по умолчанию зависит от опции
--general_log .
Местом назначения для вывода журнала управляет
log_output :
если это значение NONE , никакие записи журнала не написаны, даже
если журнал включен.
-
general_log_file
Формат командной строки
| --general-log-file=file_name
|
Системная переменная
| Имя |
general_log_file |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
host_name.log |
Название общего файла системного журнала запроса. Значение по умолчанию
host_name .log , но начальное значение может
быть изменено с
--general_log_file .
-
group_concat_max_len
Формат командной строки
| --group_concat_max_len=# |
Системная переменная
| Имя |
group_concat_max_len |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
4 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
4 |
Максимум |
18446744073709551615 |
Максимальная разрешенная длина результата в байтах для функции
GROUP_CONCAT() .
Значение по умолчанию 1024.
-
have_compress
YES , если библиотека сжатия zlib
доступна серверу, NO если нет. Если нет, функции
COMPRESS() и
UNCOMPRESS()
не могут использоваться.
-
have_crypt
YES , если системный вызов crypt()
доступен серверу, NO если нет. Если нет, функция
ENCRYPT()
не может использоваться.
-
have_dynamic_loading
YES , если mysqld
поддерживает динамическую загрузку плагинов,
NO если нет. Если значение NO , Вы не можете
использовать такие опции, как --plugin-load , чтобы
загрузить плагины при запуске сервера, или
INSTALL PLUGIN , чтобы
загрузить плагины во время выполнения.
-
have_geometry
YES , если сервер поддерживает пространственные типы данных,
NO , если нет.
-
have_openssl
Псевдоним для have_ssl
.
-
have_profiling
YES , если профилирование запросов доступно. NO ,
если нет. Если есть, переменная profiling управляет, включена ли
эта способность или отключена. См.
раздел 14.7.5.31.
Эта переменная устарела и будет удалена в будущем выпуске MySQL.
-
have_query_cache
YES , если mysqld
поддерживает кэш запроса, NO , если нет.
-
have_rtree_keys
YES , если доступны индексы RTREE ,
NO , если нет. Они используются для
пространственных индексов в MyISAM .
-
have_ssl
YES , если
mysqld поддерживает соединения SSL, NO ,
если нет. DISABLED указывает, что сервер был собран с поддержкой
SSL, но не был запущен с соответствующими опциями
--ssl-xxx . См.
раздел 7.4.2
.
-
have_statement_timeout
Системная переменная
| Имя |
have_statement_timeout |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
boolean |
Доступна ли особенность тайм-аута выполнения запроса (см.
здесь).
Значение может быть NO , если фоновый поток, используемый этой
особенностью, не мог быть инициализирован.
-
have_symlink
YES , если поддержка символической ссылки включена,
NO , если нет. Это требуется в Unix для поддержки
табличных опций DATA DIRECTORY и INDEX DIRECTORY .
Если сервер запущен с
--skip-symbolic-links , значение DISABLED .
У этой переменной нет никакого значения в Windows.
-
host_cache_size
Системная переменная
| Имя |
host_cache_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
-1 (autosized) |
Минимум |
0 |
Максимум |
65536 |
Размер внутреннего кэша узла (см.
раздел 9.12.4.2).
Установка размера в 0 отключает кэш узла. Изменение размера кэша во время
выполнения неявно вызывает FLUSH HOSTS
, чтобы очистить кэш узла и усечь таблицу
host_cache .
Значение по умолчанию 128, плюс 1 для значения
max_connections
до 500, плюс 1 для каждого увеличения на 20 больше 500 в
max_connections
до верхнего предела в 2000.
Используйте
--skip-host-cache подобно установке
host_cache_size
в 0, но host_cache_size
более гибко, потому что это может также использоваться, чтобы
изменить размеры, включить или отключить кэш узла во время выполнения, не
только при запуске сервера.
Если Вы запускаете сервер с
--skip-host-cache
, это не предотвращает изменения значения
host_cache_size ,
но такие изменения не имеют никакого эффекта, и кэш не включен повторно, даже
если
host_cache_size больше 0.
-
hostname
Системная переменная
| Имя |
hostname
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Сервер устанавливает эту переменную в имя хоста сервера при запуске.
-
identity
Эта переменная синоним для
last_insert_id .
Это существует для совместимости с другими системами базы данных. Вы можете
считать значение с SELECT @@identity и установить
как SET identity .
-
init_connect
Формат командной строки
| --init-connect=name |
Системная переменная
| Имя |
init_connect
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Строка, которая будет выполнена сервером для каждого клиента, который
соединяется. Строка состоит из одного или более запросов SQL, отделенных
символами точки с запятой. Например, каждый сеанс клиента начинается по
умолчанию с включенным режимом autocommit. Для более старых серверов (до
MySQL 5.5.8) нет глобальной переменной
autocommit , чтобы
определить, что autocommit должен быть отключен по умолчанию, но как обходное
решение init_connect
может использоваться, чтобы достигнуть того же самого эффекта:
SET GLOBAL init_connect='SET autocommit=0';
init_connect
может также быть установлена в командной строке или в файле опции. Чтобы
установить переменную как только что показано с использованием файла опции,
включайте эти строки:
[mysqld]
init_connect='SET autocommit=0'
Содержимое init_connect
не выполнено для пользователей, которые имеют привилегию
SUPER .
Это сделано, чтобы ошибочное значение для
init_connect
не препятствовало тому, чтобы клиенты соединились. Например, значение могло
бы содержать запрос, у которого есть синтаксическая ошибка, таким образом
заставляя соединения клиента потерпеть неудачу. Невыполнение
init_connect
для пользователей, которые имеют привилегию
SUPER
позволяет им открыть соединение и установить значение
init_connect .
Сервер отказывается от любых наборов результатов, произведенных запросами
в значении init_connect
.
-
information_schema_stats
Формат командной строки
| --information_schema_stats=value |
Системная переменная
| Имя |
information_schema_stats |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
CACHED |
Допустимые значения |
CACHED |
LATEST |
Некоторые таблицы в INFORMATION_SCHEMA содержат столбцы,
которые обеспечивают табличную статистику:
STATISTICS.CARDINALITY
TABLES.AUTO_INCREMENT
TABLES.AVG_ROW_LENGTH
TABLES.CHECKSUM
TABLES.CHECK_TIME
TABLES.CREATE_TIME
TABLES.DATA_FREE
TABLES.DATA_LENGTH
TABLES.INDEX_LENGTH
TABLES.MAX_DATA_LENGTH
TABLES.TABLE_ROWS
TABLES.UPDATE_TIME
Эти столбцы представляют динамические табличные метаданные, то есть,
информация, которая изменяется как табличное содержание.
information_schema_stats определяет источник, из которого сервер
получает табличную статистику:
CACHED (значение по умолчанию), сервер получает
статистику из таблиц INFORMATION_SCHEMA , которые содержат
кэшируемые значения (STATISTICS и TABLES ).
Когда сервер запускается, кэшируемые статистические данные NULL .
Чтобы обновить кэшируемые значения для данной таблицы, надо использовать
ANALYZE TABLE .
LATEST сервер читает статистику непосредственно из
механизмов хранения. В этом случае сервер заменяет ссылки в запросах к
таблицам STATISTICS и TABLES
именами, у которых есть суффикс _DYNAMIC
(STATISTICS_DYNAMIC и TABLES_DYNAMIC ).
Сервер выполняет эту замену внутренне: Вы должны написать запросы,
используя имя таблицы без _DYNAMIC . Например, когда
information_schema_stats = LATEST ,
сервер обрабатывает этот запрос:
SELECT * FROM INFORMATION_SCHEMA.TABLES;
как если бы Вы написали этот запрос:
SELECT * FROM INFORMATION_SCHEMA.TABLES_DYNAMIC;
information_schema_stats также влияет на запросы
SHOW , которые осуществлены как
запросы к таблицам INFORMATION_SCHEMA .
Для предыдущего примера соответствующий запрос это
SHOW
SHOW TABLES ,
и сервер читает таблицы TABLES
или TABLES_DYNAMIC ,
в зависимости от
information_schema_stats .
См. раздел 9.2.4
.
-
init_file
Формат командной строки
| --init-file=file_name |
Системная переменная
| Имя |
init_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Название файла, определенного
--init-file , когда Вы запускаете сервер. Это должно быть
файлом, содержащим запросы SQL, которые Вы хотите, чтобы сервер выполнил,
когда он запускается. Каждый запрос должен быть на одной строке и не должен
включать комментарии. Для получения дополнительной информации см. описание
--init-file .
innodb_xxx
Системные переменные InnoDB
перечислены в раздел 16.13.
Эти переменные управляют многими аспектами хранения, использования памяти и
образцов ввода/вывода для таблиц InnoDB и особенно важны теперь,
когда InnoDB механизм хранения по умолчанию.
-
insert_id
Значение, которое будет использоваться следующим
INSERT или
ALTER TABLE , вставляя
значение AUTO_INCREMENT . Это, главным образом,
используется с двоичным журналом.
-
interactive_timeout
Формат командной строки
| --interactive_timeout=# |
Системная переменная
| Имя |
interactive_timeout |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
28800 |
Минимум |
1 |
Число секунд, которое сервер ждет деятельности по интерактивному
соединению прежде, чем закрыть это. Интерактивный клиент определен как
клиент, который использует опцию CLIENT_INTERACTIVE в
mysql_real_connect()
. См. wait_timeout
.
-
internal_tmp_disk_storage_engine
Формат командной строки
| --internal_tmp_disk_storage_engine=#
|
Системная переменная
| Имя |
internal_tmp_disk_storage_engine
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
INNODB |
Допустимые значения |
MYISAM |
INNODB |
Механизм хранения для внутренних временных таблиц на диске (см.
раздел 9.4.4).
Разрешенные значения MYISAM и INNODB
(значение по умолчанию).
Если
internal_tmp_disk_storage_engine=INNODB ,
запросы, которые производят временные таблицы, которые превышают
пределы столбца или строки
InnoDB вернут ошибку Row size too large или
Too many columns. Обходное решение должно установить
internal_tmp_disk_storage_engine в MYISAM .
-
join_buffer_size
Формат командной строки
| --join_buffer_size=# |
Системная переменная
| Имя |
join_buffer_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
131072 |
Минимум |
128 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
131072 |
Минимум |
128 |
Максимум |
18446744073709547520 |
Допустимые значения
(Windows) | Тип |
integer |
Значение по умолчанию |
262144 |
Минимум |
128 |
Максимум |
4294967295 |
Допустимые значения
(Other, 32-bit platforms) | Тип
| integer |
Значение по умолчанию |
262144 |
Минимум |
128 |
Максимум |
4294967295 |
Допустимые значения
(Other, 64-bit platforms) | Тип
| integer |
Значение по умолчанию |
262144 |
Минимум |
128 |
Максимум |
18446744073709547520 |
Минимальный размер буфера, который используется для
индексных просмотров, диапазона индексных просмотров и соединений, которые не
используют индексы, и таким образом выполняют полное сканирование таблицы.
Обычно лучший способ получить быстрые соединения состоит в том, чтобы
добавить индекс. Увеличьте значение
join_buffer_size
, чтобы получить более быстрое полное соединение, когда добавление
индекса невозможно. Один буфер соединения выделен для каждого полного
соединения между двумя таблицами. Для сложного соединения между несколькими
таблицами, для которых индекс не используются, многие буферы соединения могли
бы быть необходимы.
Если не используется Batched Key Access (BKA),
нет никакой выгоды от установки более крупного буфера, чем необходимый, чтобы
держать каждую строку соответствия, и все соединения выделяют, по крайней
мере, минимальный размер, так что проявите осмотрительность в установке этой
переменной к большому значению глобально. Лучше сохранить глобальную
установку маленькой и изменить на большую установку только в сеансах, которые
делают большие соединения. Время распределения памяти может вызвать
существенные исполнительные задержки, если глобальный размер больше, чем
необходимый большинству запросов, которые используют это.
Когда используется BKA, значение
join_buffer_size
определяет, насколько большой пакет ключей находится в каждом запросе к
механизму хранения. Чем больше буфер, тем более последовательный доступ будет
к правой таблице соединения, что может значительно улучшить работу.
Значение по умолчанию составляет 256 КБ. Максимальная допустимая установка
для join_buffer_size
4GB-1. Большие значения разрешены для 64-битовых платформ (кроме
64-битной Windows, для которой большие значения
являются усеченными к 4GB-1 с предупреждением).
См. разделы 9.2.1.10 и
9.2.1.14.
-
keep_files_on_create
Формат командной строки
| --keep_files_on_create=# |
Системная переменная
| Имя |
keep_files_on_create |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Если таблица MyISAM составлена без опции
DATA DIRECTORY , файл .MYD
создается в каталоге базы данных. По умолчанию если MyISAM
находит существующий файл .MYD , он его перезаписывает.
То же самое относится к файлам .MYI
для таблиц, составленных без опции INDEX DIRECTORY .
Чтобы подавить это поведение, установите
keep_files_on_create
в ON (1), тогда MyISAM не будет
перезаписывать существующие файлы и возвращает ошибку вместо этого. Значение
по умолчанию OFF (0).
Если таблица MyISAM создана с опцией
DATA DIRECTORY или INDEX DIRECTORY и существующий
файл .MYD или .MYI найден, MyISAM всегда возвращает
ошибку. Это не будет перезаписывать файл в указанном каталоге.
-
key_buffer_size
Формат командной строки
| --key_buffer_size=# |
Системная переменная
| Имя |
key_buffer_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
8388608 |
Минимум |
8 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
8388608 |
Минимум |
8 |
Максимум |
OS_PER_PROCESS_LIMIT |
Индексные блоки для таблицы MyISAM буферизованы и совместно
использованы всеми потоками.
key_buffer_size это размер буфера, используемого для
индексных блоков. Ключевой буфер также известен как ключевой кэш.
Максимальная допустимая установка для
key_buffer_size
4GB-1 на 32-битовых платформах. Большие значения разрешены для 64-битовых
платформ. Эффективный максимальный размер мог бы быть меньше, в зависимости
от Вашей доступной физической RAM и пределов RAM на процесс, наложенных Вашей
операционной системой или платформой аппаратных средств. Значение этой
переменной указывает на объем памяти, который требуют. Внутренне сервер
выделяет такую большую память насколько возможно до этого количества, но
фактическое распределение могло бы быть меньше.
Вы можете увеличить значение, чтобы поправить индексную
обработку для всех чтений и многократных записей,
на системе, первичная функция которой должна выполнить MySQL, используя
MyISAM ,
25% полной памяти машины это приемлемое значение для этой переменной. Однако,
Вы должны знать, что, если Вы делаете значение слишком большим (например,
больше 50% полной памяти машины), Ваша система могла бы начать своп страниц
и становиться чрезвычайно медленной. Это потому, что MySQL полагается на
операционную систему, чтобы выполнить кэширование для чтений данных,
таким образом, Вы должны оставить некоторое место для кэша файловой системы.
Вы должны также рассмотреть требования к памяти любых других механизмов
хранения, которые Вы можете использовать в дополнение к
MyISAM .
Для большей скорости при записи многих строк в то же самое время, надо
использовать LOCK TABLES . См.
раздел 9.2.2.1.
Вы можете проверить исполнение ключевого буфера через
SHOW STATUS с просмотром
переменных
Key_read_requests ,
Key_reads ,
Key_write_requests
и Key_writes
. См. раздел 14.7.5. Отношение
Key_reads/Key_read_requests должно обычно быть меньше 0.01.
Отношение Key_writes/Key_write_requests
близко к 1, если Вы используете главным образом обновления и удаления, но
может быть намного меньшим, если Вы склонны делать обновления, которые
затрагивают много строк в то же самое время, или если Вы используете
табличную опцию DELAY_KEY_WRITE .
Фракция ключевого буфера в использовании может быть определена, используя
key_buffer_size
в соединении с
Key_blocks_unused и буферным размером блока, который доступен из
key_cache_block_size :
1 - ((Key_blocks_unused * key_cache_block_size) / key_buffer_size)
Это значение приблизительно, потому что некоторое место в ключевом буфере
выделено внутренне для административных структур. Факторы, которые влияют на
количество издержек для этих структур, включают размер указателя и размер
блока. Поскольку размер блока увеличивается, процент ключевого буфера,
имеет тенденцию уменьшаться. Большие блоки приводят к меньшему числу операций
чтения (потому что больше ключей получено за чтение), но наоборот увеличению
чтений ключей, которые не исследованы (если не все ключи в
блоке относятся к запросу).
Возможно создать многократные ключевые кэши MyISAM .
Предел размера 4GB относится к каждому кэшу индивидуально, не к группе. См.
раздел 9.10.2.
-
key_cache_age_threshold
Формат командной строки
| --key_cache_age_threshold=# |
Системная переменная
| Имя |
key_cache_age_threshold |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
300 |
Минимум |
100 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
300 |
Минимум |
100 |
Максимум |
18446744073709551615 |
Это значение управляет понижением буферов от горячего подсписка ключевого
кэша к теплому подсписку. Нижние значения заставляют понижение происходить
более быстро. Минимальное значение 100. Значение по умолчанию 300. См.
раздел 9.10.2.
-
key_cache_block_size
Формат командной строки
| --key_cache_block_size=# |
Системная переменная
| Имя |
key_cache_block_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
512 |
Максимум |
16384 |
Размер в байтах блоков в ключевом кэше. Значение по умолчанию 1024. См.
value is 1024. See раздел 9.10.2.
-
key_cache_division_limit
Формат командной строки
| --key_cache_division_limit=#
|
Системная переменная
| Имя |
key_cache_division_limit |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
100 |
Минимум |
1 |
Максимум |
100 |
Пункт подразделения между горячими и теплыми подсписками ключевого кэша.
Значение задает процент буферного списка, чтобы использовать для теплого
подсписка. Допустимые значения колеблются от 1 до 100. Значение по умолчанию
100. См. раздел 9.10.2.
-
keyring_file_data
Формат командной строки
| --keyring_file_data=file_name
|
Системная переменная
| Имя |
keyring_file_data |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
platform specific |
Путь файла с данными, используемого для безопасного хранения данных
плагина keyring_file (см.
раздел 7.5.3).
Местоположение файла должно быть в каталоге, который рассматривает для
использования только плагин keyring_file .
Например, не определяйте местонахождение файла в каталоге данных.
Операции брелока являются транзакционными: плагин
keyring_file использует резервный файл во время записи, чтобы
гарантировать, что он может откатиться назад к оригинальному файлу, если
работа терпит неудачу. У резервного файла есть то же самое имя, как задано
keyring_file_data
с расширением .backup .
Не используйте тот же самый файл данных keyring_file
для многократных серверов MySQL. У каждого сервера должен быть свой
собственный уникальный файл с данными.
Имя файла по умолчанию keyring , расположенный в каталоге,
который определен платформой и зависит от значения опции
INSTALL_LAYOUT
в CMake, как показано в следующей таблице.
Чтобы определить каталог по умолчанию для файла явно, если Вы создаете пакет
из исходных текстов, используйте опцию
INSTALL_MYSQLKEYRINGDIR для CMake.
Значение INSTALL_LAYOUT |
Значение по умолчанию keyring_file_data |
DEB , RPM ,
SLES , SVR4 |
/var/lib/mysql-keyring/keyring |
Иначе | keyring/keyring в
CMAKE_INSTALL_PREFIX |
Если значение, назначенное
keyring_file_data
определяет файл, который не существует, плагин keyring_file
пытается создать это во время инициализации. В случае необходимости плагин
также создает каталог, в котором расположен файл.
Если Вы создаете каталог вручную, он должен иметь рестриктивный режим и
доступен только для учетной записи, используемой, чтобы выполнить сервер.
Например, на Unix, чтобы использовать
/usr/local/mysql/mysql-keyring/keyring ,
следующие команды (выполненные как root )
создают каталог и установят его режим и собственность:
shell> cd /usr/local/mysql
shell> mkdir mysql-keyring
shell> chmod 750 mysql-keyring
shell> chown mysql mysql-keyring
shell> chgrp mysql mysql-keyring
Если плагин keyring_file не может создать или получить доступ
к файлу, он пишет сообщение об ошибке в журнал ошибок. Если предпринятое
назначение во время выполнения
keyring_file_data приводит к ошибке, значение
переменной остается неизменным.
Когда плагин keyring_file создал файл с данными
keyring_file и начал использовать это, важно не удалить файл.
Например, InnoDB использует файл, чтобы сохранить главный ключ,
используемый, чтобы дешифровать данные в таблицах с шифрованием табличного
пространства, см. раздел
16.7.10. Потеря файла заставит данные в таких таблицах становиться
недоступными. Допустимо переименовать или переместить файл, пока Вы изменяете
значение
keyring_file_data соответственно.
Рекомендуется, чтобы Вы создали отдельную резервную копию файла
keyring немедленно после того, как Вы составляете первую
зашифрованную таблицу, а также после ротации главного ключа.
large_files_support
Был ли mysqld
собран с опциями для поддержки больших файлов.
-
large_pages
Формат командной строки
| --large-pages |
Системная переменная
| Имя |
large_pages
|
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Linux |
Допустимые значения
(Linux) | Тип |
boolean |
Значение по умолчанию |
FALSE |
Включена ли поддержка большой страницы (через опцию
--large-pages
). См. раздел 9.12.3.2.
-
large_page_size
Системная переменная
| Имя |
large_page_size |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
(Linux) | Тип |
integer |
Значение по умолчанию |
0 |
Если поддержка большой страницы включена, это показывает размер страниц
памяти. Большие страницы памяти поддержаны только в Linux, на других
платформах значение этой переменной всегда 0. См.
раздел 9.12.3.2.
-
last_insert_id
Значение, которое будет возвращено из
LAST_INSERT_ID()
. Это сохранено в двоичном журнале, когда Вы используете
LAST_INSERT_ID()
в запросе, который обновляет таблицу. Установка этой переменной не обновляет
значение, возвращенное C API
mysql_insert_id() .
-
lc_messages
Формат командной строки
| --lc-messages=name |
Системная переменная
| Имя |
lc_messages
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
en_US |
Локаль, чтобы использовать для сообщений об ошибках. Значение по умолчанию
en_US . Сервер преобразует параметр к языковому имени и
комбинирует его со значением
lc_messages_dir , чтобы произвести местоположение для файла
сообщения об ошибке. См. раздел
11.2.
-
lc_messages_dir
Формат командной строки
| --lc-messages-dir=dir_name |
Системная переменная
| Имя |
lc_messages_dir |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Каталог, где сообщения об ошибках расположены. Сервер использует значение
вместе со значением lc_messages
, чтобы произвести местоположение для файла сообщения об ошибке.
См. раздел 11.2.
-
lc_time_names
Системная переменная
| Имя |
lc_time_names
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Эта переменная определяет локаль, которая управляет языком, используемым,
чтобы вывести на экран имена дня, месяца и сокращения. Эта переменная
затрагивает вывод из функций
DATE_FORMAT() ,
DAYNAME() и
MONTHNAME() .
Имена значения POSIX-стиля, например, 'ja_JP' или 'pt_BR'
. Значение по умолчанию 'en_US' независимо от установки
локали Вашей системы. Для дополнительной информации см.
раздел 11.7.
-
license
Системная переменная
| Имя |
license
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
GPL |
Тип лицензии сервера.
-
local_infile
Системная переменная
| Имя |
local_infile
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
true |
Поддержан ли LOCAL для
LOAD DATA INFILE .
Если эта переменная отключена, клиенты не могут использовать
LOCAL в LOAD DATA .
В то время как значение по умолчанию для этой переменной true ,
разрешен ли LOAD DATA INFILE LOCAL зависит от того, как MySQL
был собран, так же как от многих настроек на сервере и на клиенте, см.
раздел 7.1.6.
-
lock_wait_timeout
Формат командной строки
| --lock_wait_timeout=# |
Системная переменная
| Имя |
lock_wait_timeout |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
31536000 |
Минимум |
1 |
Максимум |
31536000 |
Эта переменная определяет тайм-аут в секундах для попыток приобрести
блокировки метаданных. Допустимые значения колеблются от 1 до 31536000 (1
год). Значение по умолчанию 31536000.
Этот тайм-аут относится ко всем запросам, которые используют метаданные о
блокировке. Они включают операции DML и DDL на таблицах, представлениях,
хранимых процедурах и сохраненных функциях, так же как
LOCK TABLES ,
FLUSH TABLES WITH READ LOCK и
HANDLER .
Этот тайм-аут не относится к неявным доступам к системным таблицам в
базе данных mysql , таких как таблицы привилегий, измененные
GRANT или
REVOKE или табличные запросы
журналирования. Тайм-аут действительно относится к системным таблицам, к
которым получают доступ непосредственно, как с
SELECT или
UPDATE .
Значение тайм-аута применяется отдельно для каждой попытки блокировки
метаданных. Данный запрос может потребовать больше, чем одной блокировки,
таким образом, для запроса возможно заблокировать дольше, чем на
lock_wait_timeout
прежде, чем сообщить об ошибке тайм-аута. Когда тайм-аут блокировки
происходит, будет ошибка
ER_LOCK_WAIT_TIMEOUT .
lock_wait_timeout
не относится к отсроченным вставкам, которые всегда выполняются с
тайм-аутом 1 год. Это сделано, чтобы избежать ненужных тайм-аутов, потому что
сеанс, который выпускает отсроченную вставку, не получает уведомления о
тайм-аутах отсроченных вставок.
-
locked_in_memory
Системная переменная
| Имя |
locked_in_memory |
Область действия |
Глобальная |
Динамическая |
Нет |
Был ли mysqld
заблокирован в памяти с
--memlock .
-
log_bin_trust_function_creators
Формат командной строки
| --log-bin-trust-function-creators
|
Системная переменная
| Имя |
log_bin_trust_function_creators |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Эта переменная применяется, когда двоичное журналирование включено.
Это управляет, можно ли доверять создателям сохраненных функций, чтобы не
создать сохраненные функции, которые заставят опасные события быть
написанными в двоичный журнал. Если установлено в 0 (значение по умолчанию),
пользователям не разрешают создать или изменить сохраненные функции, если они
не имеют привилегии SUPER
в дополнение к CREATE
ROUTINE или ALTER
ROUTINE . Установка 0 также проводит в жизнь ограничение, которым
функция должна быть объявлена с DETERMINISTIC ,
READS SQL DATA или NO SQL . Если переменная
установлена в 1, MySQL не проводит в жизнь эти ограничения на создание
сохраненных функций. Эта переменная также применяется к созданию триггеров.
См. раздел 21.7.
-
log_builtin_as_identified_by_password
Формат командной строки
|
--log_builtin_as_identified_by_password[={OFF|ON}] |
Системная переменная
| Имя |
log_builtin_as_identified_by_password |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная затрагивает двоичное журналирование запросов
пользовательского управления. Если включено, двоичное журналирование для
CREATE USER ,
вовлекающих встроенные плагины аутентификации, переписывает, чтобы включать
IDENTIFIED BY PASSWORD , а
SET PASSWORD зарегистрированы как
SET PASSWORD , а не
ALTER USER .
-
log_error
Формат командной строки
| --log-error[=file_name] |
Системная переменная
| Имя |
log_error
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Местоположение журнала ошибок или stderr , если сервер пишет
сообщение об ошибке в стандартный ошибочный вывод. См.
раздел 6.4.2.
-
log_error_verbosity
Формат командной строки
| --log_error_verbosity=# |
Системная переменная
| Имя |
log_error_verbosity |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
3 |
Минимум |
1 |
Максимум |
3 |
Эта переменная управляет уровнем подробностей в записи ошибок,
предупреждений и сообщений примечания к журналу ошибок. Следующая таблица
показывает разрешенные значения. Значение по умолчанию 3.
Значение |
Зарегистрированные типы сообщения |
1 | Ошибки только |
2 | Ошибки и предупреждения |
3 | Все сообщения |
log_error_verbosity
предпочтен и должен использоваться вместо более старого
log_warnings .
В частности, назначение значения
log_warnings
назначает значение
log_error_verbosity и наоборот.
-
log_output
Формат командной строки
| --log-output=name |
Системная переменная
| Имя |
log_output
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
set |
Значение по умолчанию |
FILE |
Допустимые значения |
TABLE |
FILE |
NONE |
Место назначения для регистрации общего запроса и медленного журнала
запроса. Значение может быть списком разделенных запятой значений из одного
или больше слов TABLE (зарегистрировать в таблице),
FILE (в файле) или NONE (не регистрировать).
Значение по умолчанию FILE . NONE
имеет приоритет перед каким-либо другим спецификатором. Если значение
NONE , записи журнала не записаны, даже если журналы включены.
Если журналы не включены, никакое журналирование не происходит, даже если
значение log_output
не NONE . См. раздел 6.4.1
.
-
log_queries_not_using_indexes
Формат командной строки
| --log-queries-not-using-indexes
|
Системная переменная
| Имя |
log_queries_not_using_indexes |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Зарегистрированы ли запросы, которые не используют индекс, в медленном
журнале запроса. См. раздел 6.4.5.
-
log_syslog
Формат командной строки
| --log_syslog[={0|1}] |
Системная переменная
| Имя |
log_syslog
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(Unix) | Тип |
boolean |
Значение по умолчанию |
OFF |
Допустимые значения
(Windows) | Тип |
boolean |
Значение по умолчанию |
ON |
Регистрируют ли при ошибке записи вывод в syslog
(для Unix) или в Event Log (в Windows).
Значение по умолчанию определено платформой:
Независимо от значения по умолчанию
log_syslog может быть
установлен явно, чтобы управлять выводом на любой поддержанной платформе.
Вывод syslog является ортогональным к посылке ошибочного
вывода к файлу или (в Windows) на консоль. Ошибочный вывод может быть
направлен к последнему месту назначения в дополнение к (или вместо)
syslog . См. раздел 6.4.2.
-
log_syslog_facility
Формат командной строки
| --log_syslog_facility=value
|
Системная переменная
| Имя |
log_syslog_facility |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
daemon |
Средство для записи журнала ошибок в syslog
(какая программа посылает сообщению). Эта переменная не имеет никакого
эффекта, если log_syslog
включена. См. раздел 6.4.2.
Разрешенные значения могут измениться от операционной системы, см.
документацию на syslog .
Эта переменная не существует в Windows.
-
log_syslog_include_pid
Формат командной строки
| --log_syslog_include_pid[={0|1}]
|
Системная переменная
| Имя |
log_syslog_include_pid |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Включать ли ID процесса сервера в каждую строку вывода журнала ошибок,
написанного в syslog . Эта переменная не имеет никакого эффекта,
если log_syslog
включена. См. раздел 6.4.2.
Эта переменная не существует в Windows.
-
log_syslog_tag
Формат командной строки
| --log_syslog_tag=value |
Системная переменная
| Имя |
log_syslog_tag |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
empty string |
Тег, который будет добавлен к идентификатору сервера в журнале ошибок,
syslog . Эта переменная не имеет никакого эффекта, если включена
log_syslog , см.
раздел 6.4.2.
По умолчанию идентификатор сервера mysqld
без тега. Если тег tag_val определен, это приложено к
идентификатору сервера с ведущим дефисом, приводящим к идентификатору
mysqld-tag_val .
В Windows, чтобы использовать тег, который еще не существует, сервер
должен быть выполнен из учетной записи с привилегиями Администратора, чтобы
разрешить создание записи регистрации для тега. Такие привилегии не
требуются, если тег уже существует.
-
log_timestamps
Формат командной строки
| --log_timestamps=# |
Системная переменная
| Имя |
log_timestamps |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
UTC |
Допустимые значения |
UTC |
SYSTEM |
Эта переменная управляет часовым поясом сообщений журнала ошибок,
общего журнала запроса и журнала медленных запросов, написанных в файлы.
Это не затрагивает часовой пояс общего журнала запроса и медленного журнала
запросов, написанных в таблицы (mysql.general_log ,
mysql.slow_log ). Строки, полученные из тех таблиц, могут быть
преобразованы от местного системного часового пояса до любого желаемого
часового пояса с помощью
CONVERT_TZ() или устанавливая сеансовое значение
time_zone .
Разрешенные значения
log_timestamps : UTC (значение по умолчанию) и
SYSTEM (местный системный часовой пояс).
Timestamp написаны, используя формат ISO 8601/RFC 3339:
YYYY-MM-DDThh:mm:ss.uuuuuu плюс конечное значение
Z (UTC) или hh:mm (смещение относительно UTC).
-
log_throttle_queries_not_using_indexes
Если вклчюена
log_queries_not_using_indexes ,
log_throttle_queries_not_using_indexes ограничивает число запросов
в минуту, которые могут быть написана в медленный журнал запроса. Значение 0
(значение по умолчанию) не означает "без ораничений"
. См. раздел 6.4.5.
-
log_slow_admin_statements
Системная переменная
| Имя |
log_slow_admin_statements |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включать медленные административные запросы в запросы, написанные в
медленный журнал запросов. Административные запросы включают
include ALTER TABLE ,
ANALYZE TABLE ,
CHECK TABLE ,
CREATE INDEX ,
DROP INDEX ,
OPTIMIZE TABLE и
REPAIR TABLE .
-
log_warnings
Устарела |
5.7.2 |
Формат командной строки
| --log-warnings[=#] |
Системная переменная
| Имя |
log_warnings
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
2 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
2 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Произвести ли дополнительные предупреждающие сообщения для журнала ошибок.
Эта переменная включена по умолчанию со значением 2. Чтобы отключить,
установите это в 0. Сервер регистрирует сообщения о запросах, которые опасны
для основанного на запросе журналирования, если значение больше 0. Прерванные
соединения и ошибки доступа для новых попыток соединения зарегистрированы,
если значение больше 1. См. раздел
B.5.2.10.
Включение этой опции, устанавливая это больше 0, рекомендуется, если Вы
используете репликацию, чтобы получить больше информации о том, что
происходит, например, сообщения о сетевых отказах и пересоединениях. Если
значение больше 1, прерванные соединения и ошибки доступа для новых попыток
соединения написаны в журнал ошибок.
Если ведомый сервер запущен с включенной
log_warnings ,
ведомое устройство печатает сообщения в журнал ошибок, чтобы предоставить
информацию о состоянии, таком как двоичный журнал и координаты журнала реле,
где это запускает свое задание, когда это переключается на другой журнал
реле, когда это повторно соединяется после разъединения и т.д.
С MySQL 5.7.2 единицы информации, которыми ранее управляла
log_warnings ,
управляют
log_error_verbosity , которая предпочтена и должна использоваться
вместо более старой
log_warnings .
log_warnings и опция командной строки
--log-warnings
устарели и будут удалены в будущем выпуске MySQL.
Назначение значения к
log_warnings назначает значение на
log_error_verbosity
и наоборот. Переменные связаны следующим образом:
С MySQL 5.7.2 уровнем журнала значения по умолчанию управляет
log_error_verbosity
, у которой есть значение по умолчанию 3. Кроме того, значение по
умолчанию для log_warnings
изменено от 1 до 2, которое соответствует
log_error_verbosity=3
. Чтобы достигнуть уровня журналирования, подобного предыдущему
значению по умолчанию, надо установить
log_error_verbosity=2
.
В MySQL 5.7.2 и выше использование
log_warnings
все еще разрешено, но отображается на использование
log_error_verbosity
:
long_query_time
Формат командной строки
| --long_query_time=# |
Системная переменная
| Имя |
long_query_time |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
numeric |
Значение по умолчанию |
10 |
Минимум |
0 |
Допустимые значения
| Тип |
numeric |
Значение по умолчанию |
10 |
Минимум |
0 |
Если запрос занимает больше времени чем это значение в секундах, сервер
увеличивает Slow_queries
. Если медленный журнал запроса включен, запрос зарегистрирован в
медленном системном журнале запросов. Это значение измерено в режиме
реального времени, а не времени центрального процессора, таким образом,
запрос, который находится под порогом на слегка загруженной системе, мог бы
быть выше порога на более загруженной. Минимальные и значения по умолчанию
long_query_time
0 и 10, соответственно. Значение может быть определено с точностью до
разрешению микросекунд. Для того, чтобы зарегистрировать в файл, время
написано, включая часть микросекунд. Для того, чтобы зарегистрировать в
таблицу, написаны только целые значения времени, часть микросекунд
проигнорирована. См. раздел 6.4.5.
-
low_priority_updates
Формат командной строки
| --low-priority-updates |
Системная переменная
| Имя |
low_priority_updates |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Если установлено в 1 , все
INSERT ,
UPDATE ,
DELETE и
LOCK TABLE WRITE ждут, пока нет никакого ожидающего
SELECT или
LOCK TABLE READ на затронутой таблице. Это затрагивает только
механизмы хранения, которые используют только блокировку на уровне таблицы
(такие, как MyISAM , MEMORY и MERGE ).
-
lower_case_file_system
Системная переменная
| Имя |
lower_case_file_system |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
boolean |
Эта переменная описывает чувствительность к регистру имен файла в файловой
системе, где каталог данных расположен. OFF указывает, что имена
являются чувствительными к регистру, ON указывает, что они не
являются чувствительными к регистру. Эта переменная только для чтения, потому
что она отражает признак файловой системы, и установка ее не имела бы
никакого эффекта на файловую систему.
-
lower_case_table_names
Формат командной строки
| --lower_case_table_names[=#]
|
Системная переменная
| Имя |
lower_case_table_names |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
2 |
Если установлено в 0, имена таблиц сохранены как определено, и сравнения
являются чувствительными к регистру. Если установлено в 1, имена таблиц
сохранены в нижнем регистре на диске, и сравнения не являются чувствительными
к регистру. Если установлено в 2, имена таблиц сохранены как дано, но
сравнены в нижнем регистре. Эта опция также относится к именам базы данных и
табличным псевдонимам. Для дополнительной информации см.
раздел 10.2.2.
В Windows значение по умолчанию 1. В OS X значение по умолчанию 2.
Вы не должны установить
lower_case_table_names в 0, если Вы выполняете MySQL на системе,
где каталог данных находится на нечувствительной к регистру файловой системе
(такой как Windows или OS X). Это неподдержанная комбинация, которая может
привести к сбою в INSERT INTO ... SELECT ... FROM tbl_name
при неправильном регистре tbl_name .
С MyISAM доступ к именам таблиц, используя различные регистры,
может вызвать повреждение индекса.
С MySQL 5.7.9 сообщение об ошибке напечатано, и сервер завершается,
если Вы пытаетесь запустить сервер с
--lower_case_table_names=0 на нечувствительной к
регистру файловой системе.
Если Вы используете таблицы InnoDB ,
Вы должны установить эту переменную в 1 на всех платформах, чтобы вынудить
имена быть преобразованными в нижний регистр.
Установка этой переменной в MySQL 8.0 меняет поведение опций фильтрации
репликации относительно чувствительности к регистру (Bug #51639), см.
раздел 19.2.5.
-
max_allowed_packet
Формат командной строки
| --max_allowed_packet=# |
Системная переменная
| Имя |
max_allowed_packet |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
4194304 |
Минимум |
1024 |
Максимум |
1073741824 |
Максимальный размер одного пакета, любой строки или любого параметра,
посланного фукцией C API
mysql_stmt_send_long_data() .
Значение по умолчанию составляет 4 МБ.
Пакетный буфер сообщения инициализирован
net_buffer_length
байт, но может вырасти до
max_allowed_packet
байт, если надо. Это значение по умолчанию является маленьким,
чтобы поймать большой (возможно, неправильный) пакет.
Вы должны увеличить это значение, если Вы используете большие столбцы
BLOB или длинные строки. Это должно
быть столь же большим как самое большое значение
BLOB . Предел протокола для
max_allowed_packet
1GB. Значение должно быть кратным 1024, не кратные значения
округлены в меньшую сторону к самому близкому кратному числу.
Когда Вы изменяете размер буфера сообщения, изменяя значение
max_allowed_packet
, Вы должны также изменить размер буфера на стороне клиента, если
Ваша программа клиента разрешает это. Значением по умолчанию
max_allowed_packet
, встроенным в библиотеку клиента, является 1GB,
но отдельные программы клиента могли бы переопределить это. Например,
mysql и
mysqldump
имеют значения по умолчанию 16 МБ и 24 МБ, соответственно. Они также
позволяют Вам изменить клиентское значение, устанавливая
max_allowed_packet
в командной строке или в файле опций.
Значение сеанса этой переменной только для чтения. Клиент может получить
так много байтов, как значение сеанса. Однако, сервер не будет посылать
клиенту больше байтов, чем глобальное текущее значение
max_allowed_packet
. Глобальное значение могло быть меньше, чем значение сеанса, если
глобальное значение изменено после того, как клиент соединяется.
-
max_connect_errors
Формат командной строки
| --max_connect_errors=# |
Системная переменная
| Имя |
max_connect_errors |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
100 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
100 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Если больше последовательных запросов соединения, чем это значение, от
узла прерваны без успешного соединения, сервер блокирует хост, переставая
принимать с него соединения. Вы можете открыть заблокированные узлы,
сбрасывая кэш узла. Сделать это можно с помощью
FLUSH HOSTS или
mysqladmin flush-hosts.
Если соединение установлено успешно в пределах меньше
max_connect_errors
после предыдущего прерванного соединения, счетчик ошибок для узла
очищен к нолю. Однако, как только узел заблокирован, сброс кэша узла это
единственный способ открыть это. Значение по умолчанию 100.
-
max_connections
Формат командной строки
| --max_connections=# |
Системная переменная
| Имя |
max_connections |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
151 |
Минимум |
1 |
Максимум |
100000 |
Максимальное разрешенное число одновременных соединений клиента.
По умолчанию это 151. См.
раздел B.5.2.6.
Увеличение этого значения увеличивает число описателей файла, которых
требует mysqld
. Если необходимое число описателей недоступно, сервер уменьшает значение
max_connections .
См. раздел 9.4.3.1.
Соединения, отвергнутые потому, что лимит
max_connections
достигнут, увеличивают значение
Connection_errors_max_connections .
-
max_delayed_threads
Устарела |
5.6.7 |
Формат командной строки
| --max_delayed_threads=# |
Системная переменная
| Имя |
max_delayed_threads |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
20 |
Минимум |
0 |
Максимум |
16384 |
Эта системная переменная устарела (потому что DELAYED вставки
не поддержаны) и будет удалена в будущем выпуске.
-
max_digest_length
Формат командной строки
| --max_digest_length=# |
Системная переменная
| Имя |
max_digest_length |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
0 |
Максимум |
1048576 |
Максимальное количество байтов, доступных для вычислительных обзоров
запроса (см.
раздел 23.7). Когда это количество используется для того, чтобы вычислить
обзор для запроса, никакие дальнейшие маркеры из разобранного запроса не
собраны. Запросы, отличающиеся только после этих байтов разобранных маркеров,
производят тот же самый обзор и соединены для статистики обзора.
Уменьшение
max_digest_length уменьшает использование памяти, но заставляет
значение обзора большего количества запросов становится неразличимым, если
они отличаются только в конце. Увеличение значения разрешает более длинным
запросым быть отличенными, но использование памяти увеличено, особенно для
рабочих нагрузок, которые вовлекают большие количества одновременных сеансов
(max_digest_length
байт выделены на сеанс).
Эта переменная не относится к обзорам Performance Schema,
но применяется к другим функциям сервера, которые используют обзоры, таким
как плагины перезаписи запроса. Чтобы управлять обзорами Performance Schema,
надо использовать
performance_schema_max_digest_length .
-
max_error_count
Формат командной строки
| --max_error_count=# |
Системная переменная
| Имя |
max_error_count |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
64 |
Минимум |
0 |
Максимум |
65535 |
Максимальное количество ошибок, предупреждений и сообщений примечания,
которые будут сохранены для SHOW
ERRORS и SHOW
WARNINGS . Это то же самое, как число областей условия в области
диагностики, и таким образом число условий, которые могут быть просмотрены
GET DIAGNOSTICS .
-
max_execution_time
Формат командной строки
| --max_execution_time=# |
Системная переменная
| Имя |
max_execution_time |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Тайм-аут выполнения для
SELECT
в миллисекундах. Если значение 0, тайм-ауты не включены.
max_execution_time
применяется следующим образом:
max_heap_table_size
Формат командной строки
| --max_heap_table_size=# |
Системная переменная
| Имя |
max_heap_table_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
16777216 |
Минимум |
16384 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
16777216 |
Минимум |
16384 |
Максимум |
1844674407370954752 |
Эта переменная устанавливает максимальный размер создаваемой пользователем
таблицы MEMORY . Значение переменной используется, чтобы
вычислить значение MAX_ROWS для таблицы MEMORY .
Установка этой переменной не имеет никакого эффекта на любой существующей
таблице MEMORY , если таблица не обновлена с таким запросом, как
CREATE TABLE ,
ALTER TABLE или
TRUNCATE TABLE .
Перезапуск сервера также устанавливает максимальный размер существующих
таблиц MEMORY к глобальному значению
max_heap_table_size
.
Эта переменная также используется в соединении с
tmp_table_size ,
чтобы ограничить размер внутренних таблиц в памяти. См.
раздел 9.4.4.
max_heap_table_size не реплицируется, см. разделы
19.4.1.23 и
19.4.1.38.
-
max_insert_delayed_threads
Устарела |
5.6.7 |
Системная переменная
| Имя |
max_insert_delayed_threads |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
integer |
Синоним для
max_delayed_threads .
Эта системная переменная устарела (потому что DELAYED вставки
не поддержаны) и будет удалена в будущем выпуске.
-
max_join_size
Формат командной строки
| --max_join_size=# |
Системная переменная
| Имя |
max_join_size
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
18446744073709551615 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Не разрешать запросы, которые, вероятно, должны исследовать больше, чем
max_join_size
строк (для однотабличных запросов) или комбинаций строки (для многотабличных
запросов) или которые, вероятно, сделают больше, чем
max_join_size
дисковых поисков. Устанавливая это значение, Вы можете поймать запросы, где
ключи не используются должным образом, и это, вероятно, заняло бы много
времени. Установите это, если Ваши пользователи склонны выполнять соединения
без WHERE , которые занимают много времени или
возвращают миллионы строк.
Установка этой переменной к значению кроме DEFAULT
сбрасывает значение
sql_big_selects в 0 . Если Вы устанавливаете
sql_big_selects
снова, max_join_size
проигнорирована.
Если результат запроса находится в кэше запроса, никакая проверка размера
результата не выполнена, потому что результат был ранее вычислен, и это не
обременяет сервер, чтобы послать его клиенту.
-
max_length_for_sort_data
Формат командной строки
| --max_length_for_sort_data=#
|
Системная переменная
| Имя |
max_length_for_sort_data |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
4 |
Максимум |
8388608 |
Размер индексируемого значения, который определяет используемый
алгоритм filesort , см.
раздел 9.2.1.15.
-
max_points_in_geometry
Формат командной строки
| --max_points_in_geometry=integer
|
Системная переменная
| Имя |
max_points_in_geometry |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
65536 |
Минимум |
3 |
Максимум |
1048576 |
Максимальное значение параметра
points_per_circle функции
ST_Buffer_Strategy()
.
-
max_prepared_stmt_count
Формат командной строки
| --max_prepared_stmt_count=# |
Системная переменная
| Имя |
max_prepared_stmt_count |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
16382 |
Минимум |
0 |
Максимум |
1048576 |
Эта переменная ограничивает общее количество готовых запросов в сервере.
Это может использоваться в окружающей среде, где есть потенциал для атак
denial-of-service, основанных на выполнении сервера из памяти, готовя
огромные числа запросов. Если значение установлено ниже, чем текущее число
готовых запросов, существующие запросы не затронуты и могут использоваться,
но никакие новые запросы не могут быть подготовлены, пока текущее число не
удаляется ниже предела. Значение по умолчанию 16382. Допустимый диапазон
значений от 0 до 1 миллиона. Установка значения в 0
отключает подготовленные запросы.
-
max_relay_log_size
Формат командной строки
| --max_relay_log_size=# |
Системная переменная
| Имя |
max_relay_log_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
1073741824 |
Если запись ведомым устройством его журнала реле заставляет текущий размер
файла системного журнала превышать значение этой переменной, ведомое
устройство ротирует журналы реле (закрывает текущий файл и открывает
следующий). Если
max_relay_log_size = 0, сервер смотрит
max_binlog_size
для двоичного журнала и для журнала реле. Если
max_relay_log_size
больше 0, это ограничивает размер журнала реле, который позволяет
Вам иметь различные размеры для двух журналов. Вы должны установить
max_relay_log_size
между 4096 байтами и 1GB (включительно) или к 0. Значение по
умолчанию 0. См.
раздел 19.2.2.
-
max_seeks_for_key
Формат командной строки
| --max_seeks_for_key=# |
Системная переменная
| Имя |
max_seeks_for_key |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
4294967295 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
18446744073709551615 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Ограничить принятое максимальное количество просмотров строк при поиске,
основанном на ключе. MySQL предполагает, что не больше, чем это число ключей
требуется, ища соответствие строк в таблице, просматривая индексирование,
независимо от фактического количества элементов индексирования (см.
раздел 14.7.5.22). Устанавливая это в низкое
значение (например, 100), Вы можете вынудить MySQL предпочесть индекс
вместо сканирования таблицы.
-
max_sort_length
Формат командной строки
| --max_sort_length=# |
Системная переменная
| Имя |
max_sort_length |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
4 |
Максимум |
8388608 |
Число байтов, чтобы использовать, сортируя значения данных.
Сервер использует только первые
max_sort_length
байт каждого значения и игнорирует остальные. Следовательно, значения,
которые отличаются только после первых
max_sort_length
байт сравниваются как равные для GROUP BY ,
ORDER BY и DISTINCT .
Увеличение значения
max_sort_length может потребовать увеличения значения
sort_buffer_size
. Для деталей см. раздел
9.2.1.15.
-
max_sp_recursion_depth
Формат командной строки
| --max_sp_recursion_depth[=#]
|
Системная переменная
| Имя |
max_sp_recursion_depth |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Максимум |
255 |
Число раз, которое любую хранимую процедуру можно вызвать рекурсивно.
Значение по умолчанию для этой опции 0, что полностью отключает рекурсию в
хранимых процедурах. Максимальное значение 255.
Рекурсия хранимой процедуры увеличивает требование к пространству стека
потока. Если Вы увеличиваете значение
max_sp_recursion_depth , может быть необходимо увеличить размер
стека потока, увеличивая значение
thread_stack при запуске сервера.
-
max_tmp_tables
Эта переменная не использована. Это устарело и будет удалено в
будущем выпуске MySQL.
-
max_user_connections
Формат командной строки
| --max_user_connections=# |
Системная переменная
| Имя |
max_user_connections |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
4294967295 |
Максимальное количество одновременных соединений, разрешенных любой данной
учетной записи пользователя MySQL. Значение 0 (значение по умолчанию) не
означает "без ограничений".
У этой переменной есть глобальное значение, которое может быть установлено
при запуске сервера или во время выполнения. Также есть значение сеанса
только для чтения, которое указывает на эффективный предел одновременных
соединений, который относится к учетной записи, связанной с текущим сеансом.
Значение сеанса инициализировано следующим образом:
Пределы ресурса учетной записи определены, используя
CREATE USER или
ALTER USER , см.
раздел 7.3.5.
-
max_write_lock_count
Формат командной строки
| --max_write_lock_count=# |
Системная переменная
| Имя |
max_write_lock_count |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
4294967295 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
18446744073709551615 |
Минимум |
1 |
Максимум |
18446744073709551615 |
После обработки нескольких блокировок записи разрешают, чтобы некоторая
блокировка чтения была обработана промежуточно.
mecab_rc_file
Формат командной строки
| --mecab_rc_file |
Системная переменная
| Имя |
mecab_rc_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Опция mecab_rc_file используется, настраивая
полнотекстовый анализатор MeCab.
Опция mecab_rc_file определяет путь к конфигурационному файлу
mecabrc , который является конфигурационным файлом для MeCab.
Опция только для чтения и может быть установлена только при запуске. Файл
mecabrc обязан инициализировать MeCab.
См. раздел 13.9.9.
Для информации об опциях, которые могут быть определены в
конфигурационном файле MeCab mecabrc , см.
MeCab Documentation на сайте
Google Developers.
-
metadata_locks_cache_size
Устарела |
5.7.4 |
Системная переменная
| Имя |
metadata_locks_cache_size |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1024 |
Минимум |
1 |
Максимум |
1048576 |
Размер метаданных блока кэша. Сервер использует этот кэш, чтобы избежать
создания и разрушения объектов синхронизации. Это особенно полезно на
системах, где такие операции дороги.
Метаданные, блокирующие изменения выполнения, сделали эту переменную
ненужной, таким образом, она устарела и будет удалена в
будущем выпуске MySQL.
-
metadata_locks_hash_instances
Устарела |
5.7.4 |
Системная переменная
| Имя |
metadata_locks_hash_instances |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
8 |
Минимум |
1 |
Максимум |
1024 |
Набор блокировок метаданных может быть разделен в отдельные хеши, чтобы
разрешить соединениям, получающим доступ к различным объектам, использовать
различные хеши блокировки и уменьшить издержки
metadata_locks_hash_instances
определяет число хешей (значение по умолчанию 8).
Метаданные, блокирующие изменения выполнения, сделали эту переменную
ненужной, таким образом, она устарела и будет удалена в
будущем выпуске MySQL.
-
min_examined_row_limit
Формат командной строки
| --min-examined-row-limit=# |
Системная переменная
| Имя |
min_examined_row_limit |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Запросы, которые исследуют меньше, чем это число строк, не
зарегистрированы в медленном журнале запроса.
-
multi_range_count
Устарела |
5.6.7 |
Формат командной строки
| --multi_range_count=# |
Системная переменная
| Имя |
multi_range_count |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
1 |
Максимум |
4294967295 |
Эта переменная не имеет никакого эффекта. Она устарела и будет удалена
в будущем выпуске MySQL.
-
myisam_data_pointer_size
Формат командной строки
| --myisam_data_pointer_size=#
|
Системная переменная
| Имя |
myisam_data_pointer_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
6 |
Минимум |
2 |
Максимум |
7 |
Размер указателя по умолчанию в байтах, чтобы использовать
CREATE TABLE для
MyISAM без опции MAX_ROWS .
Эта переменная не может быть меньше 2 или больше 7. Значение по умолчанию 6.
См. раздел B.5.2.11.
-
myisam_max_sort_file_size
Формат командной строки
| --myisam_max_sort_file_size=#
|
Системная переменная
| Имя |
myisam_max_sort_file_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
2147483648 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
9223372036854775807 |
Максимальный размер временного файла, который MySQL разрешают
использовать, обновляя индекс MyISAM
(при работе REPAIR TABLE ,
ALTER TABLE или
LOAD DATA INFILE ).
Если размер файла больше, чем это значение, индекс создается, используя
ключевой кэш вместо этого, что медленнее. Значение дано в байтах.
Если индексные файлы MyISAM превышают этот размер, и дисковое
пространство доступно, увеличивая значение может помочь работе. Пространство
должно быть доступным в файловой системе, содержащей каталог, где
оригинальный индексный файл расположен.
-
myisam_mmap_size
Формат командной строки
| --myisam_mmap_size=# |
Системная переменная
| Имя |
myisam_mmap_size |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
4294967295 |
Минимум |
7 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
18446744073709551615 |
Минимум |
7 |
Максимум |
18446744073709551615 |
Максимальный объем памяти, чтобы использовать для сжатого отображения
файлов MyISAM .
Если многие сжатые MyISAM таблицы используются, значение может
быть уменьшено, чтобы уменьшить вероятность свопа.
-
myisam_recover_options
Значение опции
--myisam-recover-options . См.
раздел 6.1.4.
-
myisam_repair_threads
Формат командной строки
| --myisam_repair_threads=# |
Системная переменная
| Имя |
myisam_repair_threads
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
1 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
1 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Если это значение больше 1, табличные индексы MyISAM
создаются параллельно (каждый индекс в собственном потоке) во время
процесса Repair by sorting . Значение по умолчанию 1.
Мультипоточное восстановление все еще в стадии бета-тестирования.
myisam_sort_buffer_size
Формат командной строки
|
--myisam_sort_buffer_size=# |
Системная переменная
| Имя |
myisam_sort_buffer_size
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(Windows, 32-bit platforms) | Тип
| integer |
Значение по умолчанию |
8388608 |
Минимум |
4096 |
Максимум |
4294967295 |
Допустимые значения
(Windows, 64-bit platforms) | Тип
|
integer |
Значение по умолчанию |
8388608 |
Минимум |
4096 |
Максимум |
18446744073709551615 |
Допустимые значения
(Other, 32-bit platforms) | Тип
|
integer |
Значение по умолчанию |
8388608 |
Минимум |
4096 |
Максимум |
4294967295 |
Допустимые значения
(Other, 64-bit platforms) | Тип
|
integer |
Значение по умолчанию |
8388608 |
Минимум |
4096 |
Максимум |
18446744073709551615 |
Размер буфера, который выделен, сортируя индексы MyISAM
при REPAIR TABLE
или когда индекс создается с CREATE
INDEX или ALTER TABLE
.
Максимальная допустимая установка для
myisam_sort_buffer_size 4GB-1.
Большие значения разрешены для 64-битовых платформ.
-
myisam_stats_method
Формат командной строки
| --myisam_stats_method=name |
Системная переменная
| Имя |
myisam_stats_method
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
nulls_unequal |
Допустимые значения |
nulls_equal |
nulls_unequal |
nulls_ignored |
Как сервер обрабатывает значения NULL ,
собирая статистические данные о распределении индексных значений для
таблиц MyISAM . У этой переменной есть три возможных значения:
nulls_equal , nulls_unequal и
nulls_ignored . Для nulls_equal все индексные
значения NULL считаются равными и формируют единственную группу
значения, у которой есть размер, равный числу значений
NULL . Для nulls_unequal значения NULL
считают неравными, и каждое значение NULL
формирует отличную группу значения размера 1. Для nulls_ignored
значения NULL проигнорированы.
Метод, который используется для того, чтобы произвести табличные
расчеты статистики, как оптимизатор выбирает индекс для выполнения запроса,
описан в разделе 9.3.7/a>.
-
myisam_use_mmap
Формат командной строки
| --myisam_use_mmap |
Системная переменная
| Имя |
myisam_use_mmap |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Использовать отображаемую память для чтения и
записи таблиц MyISAM .
-
mysql_native_password_proxy_users
Формат командной строки
| --mysql_native_password_proxy_users=
[={OFF|ON}] |
Системная переменная
| Имя |
mysql_native_password_proxy_users |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная управляет включен ли встроенный плагин аутентификации
mysql_native_password для пользователей по доверенности. Это не
имеет никакого эффекта, если включена перменная
check_proxy_users
. См. раздел 7.3.10.
-
named_pipe
Системная переменная
| Имя |
named_pipe
|
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Windows |
Допустимые значения
(Windows) | Тип |
boolean |
Значение по умолчанию |
OFF |
Только Windows. Указывает, поддерживает ли сервер соединения
по названным каналам.
-
net_buffer_length
Формат командной строки
| --net_buffer_length=# |
Системная переменная
| Имя |
net_buffer_length |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
16384 |
Минимум |
1024 |
Максимум |
1048576 |
Каждый поток клиента связан с буфером соединения и буфером результата.
Оба начинают с размера, данного
net_buffer_length
, но динамически увеличены до
max_allowed_packet
байт. Буфер результата сжимается до
net_buffer_length
после каждого запроса SQL.
Эта переменная не должна обычно изменяться, но если у Вас есть очень
небольшая память, Вы можете установить это в ожидаемую длину запросов,
посланных клиентами. Если запросы превышают эту длину, буфер соединения
автоматически увеличен. Максимальное значение
net_buffer_length
может быть установлено в 1 МБ.
Значение сеанса этой переменной только для чтения.
-
net_read_timeout
Формат командной строки
| --net_read_timeout=# |
Системная переменная
| Имя |
net_read_timeout |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
30 |
Минимум |
1 |
Число секунд, чтобы ждать большего количества данных от соединения прежде,
чем прервать чтение. Когда сервер читает от клиента,
net_read_timeout
управляет значением тайм-аута, когда прерваться. Когда сервер пишет
клиенту,
net_write_timeout управляет значением тайм-аута, когда прерваться.
См. также
slave_net_timeout .
-
net_retry_count
Формат командной строки
| --net_retry_count=# |
Системная переменная
| Имя |
net_retry_count |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
10 |
Минимум |
1 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
10 |
Минимум |
1 |
Максимум |
18446744073709551615 |
Если чтение или запись на коммуникационном порту прервано, повторить много
раз перед отказом. Это значение указывает, сколько именно раз и должно быть
установлено довольно высоко на FreeBSD, потому что внутренние прерывания
посылают во все потоки.
-
net_write_timeout
Формат командной строки
| --net_write_timeout=# |
Системная переменная
| Имя |
net_write_timeout |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
60 |
Минимум |
1 |
Число секунд, чтобы ждать блока, который будет написан соединению прежде,
чем прервать запись. См. также
net_read_timeout
.
-
new
Формат командной строки
| --new |
Системная переменная
| Имя |
new |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Disabled by |
skip-new |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Эта переменная использовалась в MySQL 4.0, чтобы включить логику 4.1 и
сохранена для обратной совместимости. Значение всегда OFF .
ngram_token_size
Формат командной строки
| --ngram_token_size |
Системная переменная
| Имя |
ngram_token_size |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
2 |
Минимум |
1 |
Максимум |
10 |
Определяет маркерный размер для n-gram полнотекстового анализатора.
Опция ngram_token_size только для чтения и может быть изменена
только при запуске. Значение по умолчанию 2 (bigram). Максимальное значение
10. См. раздел 13.9.8.
-
offline_mode
Формат командной строки
| --offline_mode=val |
Системная переменная
| Имя |
offline_mode
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Находится ли сервер в offline mode, у которого
есть эти характеристики:
Соединенные пользователи клиента, которые не имеют привилегии
SUPER , отсоединены
по следующему запросу с соответствующей ошибкой. Разъединение включает
завершение рабочих запросов и выпуск блокировок.
Такие клиенты также не могут начать новые соединения и получить
соответствующую ошибку.
- Соединенные пользователи клиента, которые имеют привилегию
SUPER , не разъединены и
могут начать новые соединения, чтобы управлять сервером.
- Ведомым потокам репликации
разрешают продолжить применять данные к серверу.
Только пользователи, которые имеют привилегию
SUPER , могут
управлять офлайновым режимом. Чтобы поместить сервер в офлайновый режим,
измените значение
offline_mode с OFF на ON .
Чтобы возобновить нормальное функционирование, измените
offline_mode с
ON на OFF . В офлайновом режиме клиенты, которым
отказывают в доступе, получают ошибку
ER_SERVER_OFFLINE_MODE
.
-
old
Формат командной строки
| --old |
Системная переменная
| Имя |
old |
Область действия |
Глобальная |
Динамическая |
Нет |
old
переменная совместимости. Это отключено по умолчанию, но может быть позволено
при запуске, чтобы вернуть сервер к поведениям, существующим в
более старых версиях.
Когда old включена,
это изменяет контекст по умолчанию индексной подсказки к используемому до
MySQL 5.1.17. Таким образом, индексные подсказки без FOR
применяются только к тому, как индексирование используется для извлечения
строки, а не к разрешению ORDER BY или GROUP BY
(см. раздел 9.9.4.
С основанным на запросе двоичным журналированием различные режимы для
ведущего и ведомых устройств могут привести к ошибкам.
-
old_alter_table
Формат командной строки
| --old-alter-table |
Системная переменная
| Имя |
old_alter_table |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Когда эта переменная включена, сервер не использует оптимизированный метод
обработки ALTER TABLE .
Это возвращается к использованию временной таблицы, копированию данных, а
затем переименованию временной таблицы к оригиналу, как используется MySQL
5.0 и ранее. Для получения дополнительной информации о работе
ALTER TABLE см.
раздел 14.1.7.
-
old_passwords
Устарела |
5.7.6 |
Системная переменная
| Имя |
old_passwords
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
0 |
Допустимые значения |
0 |
2 |
Эта системная переменная устарела
и будет удалена в будущем выпуске MySQL.
Эта переменная управляет методом хеширования пароля, используемым функцией
PASSWORD() .
Это также влияет на пароль в
CREATE USER и
GRANT , которые определяют пароль,
используя IDENTIFIED BY .
Следующая таблица показывает разрешенные значения
old_passwords ,
метод хеширования пароля для каждого значения и какие плагины аутентификации
используют пароли, хешированные с каждым методом.
Значение |
Метод хеширования пароля |
Связанный плагин аутентификации |
0 | MySQL 4.1 native |
mysql_native_password |
2 | SHA-256 | sha256_password
|
Если old_passwords=2
, следуйте инструкциям для того, чтобы использовать плагин
sha256_password в
разделе 7.5.1.2.
Сервер устанавливает глобальное значение
old_passwords
во время запуска, чтобы быть совместимым с методом хеширования пароля,
требуемым плагином аутентификации по умолчанию. Плагин по умолчанию
mysql_native_password , если
default_authentication_plugin не установлена иначе.
Когда клиент успешно соединяется с сервером, сервер устанавливает
сеансовое значение
old_passwords соответственно методу аутентификации учетной записи.
Например, если учетная запись использует плагин sha256_password ,
сервер установит old_passwords=2 .
См. раздел 7.3.9.
-
open_files_limit
Формат командной строки
| --open-files-limit=# |
Системная переменная
| Имя |
open_files_limit |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
5000, with possible adjustment |
Минимум |
0 |
Максимум |
platform dependent |
Число файлов, которые операционная система разрешает
mysqld
открывать. Значение этой переменной во время выполнения это реальное
значение, разрешенное системой, может отличаться от значения, которое Вы
определяете при запуске сервера. Значение 0 на системах, где MySQL не может
изменить число открытых файлов.
Эффективное значение
open_files_limit основано на значении, определенном при системном
запуске (если есть) и значениях
max_connections и
table_open_cache
с использованием этих формул:
1) 10 + max_connections + (table_open_cache * 2).
2) max_connections * 5.
3) open_files_limit при запуске, 5000, если не указано.
Сервер пытается получить число описателей файла, используя максимум из
этих трех значений. Если так много описателей не могут быть получены, сервер
пытается получить столько, сколько система разрешит.
-
optimizer_prune_level
Формат командной строки
| --optimizer_prune_level[=#] |
Системная переменная
| Имя |
optimizer_prune_level |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
1 |
Управляет эвристикой, примененной во время оптимизации запроса, чтобы
сократить менее многообещающие частичные планы из области поиска оптимизации.
Значение 0 отключает эвристику так, чтобы оптимизатор выполнил исчерпывающий
поиск. Значение 1 предписывает оптимизатору сократить планы, основанные на
числе строк, полученных промежуточными планами.
-
optimizer_search_depth
Формат командной строки
| --optimizer_search_depth[=#]
|
Системная переменная
| Имя |
optimizer_search_depth |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
62 |
Минимум |
0 |
Максимум |
62 |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
62 |
Минимум |
0 |
Максимум |
62 |
Максимальная глубина поиска, выполненного запросом.
Значения, больше чем число отношений в запросе, приводят к лучшим планам
запроса, но занимают больше времени, чтобы произвести план выполнения.
Значения, меньшие чем число отношений в запросе, возвращают более быстрый
план выполнения, но получающийся план может быть далеким от того, чтобы быть
оптимальным. Если установлено в 0, система автоматически
выбирает разумное значение.
-
optimizer_switch
Формат командной строки
| --optimizer_switch=value |
| --optimizer_switch=value
|
Системная переменная
| Имя |
optimizer_switch |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
set |
Допустимые значения |
batched_key_access={on|off} |
block_nested_loop={on|off} |
condition_fanout_filter={on|off}
|
derived_merge={on|off} |
duplicateweedout={on|off} |
engine_condition_pushdown={on|off}
|
firstmatch={on|off} |
index_condition_pushdown={on|off}
|
index_merge={on|off} |
index_merge_interраздел={on|off}
|
index_merge_sort_union={on|off}
|
index_merge_union={on|off} |
loosescan={on|off} |
materialization={on|off} |
mrr={on|off} |
mrr_cost_based={on|off} |
semijoin={on|off} |
subquery_materialization_cost_based=
{on|off} |
use_index_extensions={on|off}
|
Допустимые значения
| Тип |
set |
Допустимые значения |
engine_condition_pushdown={on|off} |
firstmatch={on|off} |
index_condition_pushdown={on|off}
|
index_merge={on|off} |
index_merge_interраздел={on|off}
|
index_merge_sort_union={on|off}
|
index_merge_union={on|off} |
loosescan={on|off} |
materialization={on|off} |
mrr={on|off} |
mrr_cost_based={on|off} |
semijoin={on|off} |
optimizer_switch
включает управление оптимизатором. Значение этой переменной ряд флагов,
у каждого из которых есть значение on или off ,
чтобы указать, включено ли соответствующее поведение оптимизатора.
Эта переменная имеет глобальное и сеансовое значения и может быть изменена во
время выполнения. Глобальное значение по умолчанию может быть установлено
при запуске сервера.
Чтобы видеть текущий набор флагов, выберите значение:
mysql> SELECT @@optimizer_switch\G
*************************** 1. row ***************************
@@optimizer_switch: index_merge=on,index_merge_union=on,
index_merge_sort_union=on,
engine_condition_pushdown=on,
index_condition_pushdown=on,
mrr=on,mrr_cost_based=on,
block_nested_loop=on,batched_key_access=off,
materialization=on,semijoin=on,loosescan=on,
firstmatch=on,duplicateweedout=on,
subquery_materialization_cost_based=on,
use_index_extensions=on,
condition_fanout_filter=on,derived_merge=on
См. раздел 9.9.2.
-
optimizer_trace
Системная переменная
| Имя |
optimizer_trace |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Эта переменная управляет трассировкой оптимизатора, см.
MySQL Internals: Tracing the Optimizer.
-
optimizer_trace_features
Системная переменная
| Имя |
optimizer_trace_features |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
string |
Эта переменная включает или отключает выбранную трассировку оптимизатора,
см. MySQL Internals: Tracing the Optimizer.
-
optimizer_trace_limit
Системная переменная
| Имя |
optimizer_trace_limit |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
1 |
Максимальное количество трассировок оптимизатора, чтобы вывести на экран.
Для деталей см. MySQL Internals: Tracing the Optimizer.
-
optimizer_trace_max_mem_size
Системная переменная
| Имя |
optimizer_trace_max_mem_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
16384 |
Максимальный совокупный размер сохраненных трассировок оптимизтора, см.
MySQL Internals: Tracing the Optimizer.
-
optimizer_trace_offset
Системная переменная
| Имя |
optimizer_trace_offset |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
-1 |
Смещение трассировок оптимизатора, чтобы вывести на экран. Для деталей см.
MySQL Internals: Tracing the Optimizer.
performance_schema_xxx
Системные переменные Performance Schema перечислены в
разделе 23.12.
Эти переменные могут использоваться, чтобы сконфигурировать
работу Performance Schema.
-
parser_max_mem_size
Формат командной строки
| --parser_max_mem_size=N |
Системная переменная
| Имя |
parser_max_mem_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
4294967295 |
Минимум |
400000 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
18446744073709551615 |
Минимум |
400000 |
Максимум |
18446744073709551615 |
Максимальный объем памяти, доступный анализатору. Значение по умолчанию не
устанавливает границы доступной памяти. Значение может быть уменьшено, чтобы
защититься от ситуаций нехватки памяти, вызванных, анализом
сложных запросов SQL.
-
persisted_globals_load
Формат командной строки
| --persisted_globals_load[=ON|OFF]
|
Системная переменная
| Имя |
persisted_globals_load |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Загрузить ли настройки конфигурации из файла mysqld-auto.cnf
в каталоге данных. Сервер обычно обрабатывает этот файл при запуске после
всех других файлов опции (см.
раздел 5.2.6). Отключение
persisted_globals_load заставляет последовательность запуска
сервера пропускать файл mysqld-auto.cnf .
Чтобы изменить содержание mysqld-auto.cnf , используйте
SET PERSIST , см.
раздел 14.7.4.1.
-
pid_file
Формат командной строки
| --pid-file=file_name |
Системная переменная
| Имя |
pid_file
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Путь к файлу process ID (PID). Эта переменная может быть установлена с
опцией --pid-file
.
-
plugin_dir
Формат командной строки
| --plugin_dir=dir_name |
Системная переменная
| Имя |
plugin_dir
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
directory name |
Значение по умолчанию |
BASEDIR/lib/plugin |
Путь к каталогу плагинов.
Если каталог перезаписываем сервером, для пользователя может быть возможно
написать выполнимый код в файл в каталоге с помощью
SELECT ... INTO DUMPFILE . Это может быть предотвращено,
делая plugin_dir
только для чтения серверу или устанавливая
--secure-file-priv
к каталогу, где SELECT
может быть сделан безопасно.
-
port
Формат командной строки
| --port=# |
Системная переменная
| Имя |
port |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
3306 |
Минимум |
0 |
Максимум |
65535 |
Номер порта для соединений TCP/IP.
Эта переменная может быть установлена
--port .
-
preload_buffer_size
Формат командной строки
| --preload_buffer_size=# |
Системная переменная
| Имя |
preload_buffer_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
32768 |
Минимум |
1024 |
Максимум |
1073741824 |
Размер буфера, который выделен, когда предварительно загружается индекс.
-
profiling
Если установлено в 0 или OFF (значение по умолчанию),
профилирование запроса отключено. Если установлено в 1 или ON ,
профилирование запроса включено и запросы
SHOW PROFILE и
SHOW PROFILES
обеспечивают доступ к профилированию информации. См.
раздел 14.7.5.31.
Эта переменная устарела и будет удалена в будущем выпуске MySQL.
-
profiling_history_size
Число запросов, для которых можно поддержать информацию о профилировании,
если включена опция profiling
. Значение по умолчанию 15. Максимальное значение 100.
Установка значения к 0 отключает профилирование. См.
раздел 14.7.5.31.
Эта переменная устарела и будет удалена в будущем выпуске MySQL.
-
protocol_version
Системная переменная
| Имя |
protocol_version |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
integer |
Версия протокола клиент-сервер используется сервером MySQL.
-
proxy_user
Системная переменная
| Имя |
proxy_user
|
Область действия |
Сеансовая |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Если текущий клиент это полномочие для другого пользователя, эта
переменная - имя пользователя по доверенности. Иначе эта переменная
NULL . См. раздел 7.3.10.
-
pseudo_slave_mode
Системная переменная
| Имя |
pseudo_slave_mode |
Область действия |
Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
integer |
Эта переменная для внутреннего использования сервера.
-
pseudo_thread_id
Системная переменная
| Имя |
pseudo_thread_id |
Область действия |
Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
integer |
Эта переменная для внутреннего использования сервера.
-
query_alloc_block_size
Формат командной строки
| --query_alloc_block_size=# |
Системная переменная
| Имя |
query_alloc_block_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
8192 |
Минимум |
1024 |
Максимум |
4294967295 |
Block Size |
1024 |
Размер блоков памяти, которые выделены для объектов, создаваемых во время
парсинга и выполнения запроса. Если у Вас есть проблемы с фрагментацией
памяти, может помочь увеличить этот параметр.
-
query_cache_limit
Формат командной строки
| --query_cache_limit=# |
Системная переменная
| Имя |
query_cache_limit |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
1048576 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
1048576 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Не кэшировать результаты, которые больше, чем это число байтов.
Значение по умолчанию составляет 1 МБ.
-
query_cache_min_res_unit
Формат командной строки
| --query_cache_min_res_unit=#
|
Системная переменная
| Имя |
query_cache_min_res_unit |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
4096 |
Минимум |
512 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
4096 |
Минимум |
512 |
Максимум |
18446744073709551615 |
Минимальный размер (в байтах) для блоков кэша запроса.
Значение по умолчанию 4096 (4KB). Настройка для этой переменной дана в
разделе 9.10.3.3.
-
query_cache_size
Формат командной строки
| --query_cache_size=# |
Системная переменная
| Имя |
query_cache_size |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
1048576 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
1048576 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Объем памяти для того, чтобы кэшировать результаты запроса. По умолчанию
кэш запроса отключен. Это достигнуто, используя значение по умолчанию 1M, со
значением по умолчанию для query_cache_type 0.
Чтобы значительно уменьшить издержки, если Вы устанавливаете размер в 0, Вы
должны также запустить сервер с
query_cache_type=0
.
Допустимые значения кратны 1024, другие значения округлены в меньшую
сторону к самому близкому кратному числу.
query_cache_size
байт памяти выделены, даже если
query_cache_type
= 0. См. раздел 9.10.3.3
.
Кэш запроса нуждается в минимальном размере приблизительно 40 КБ, чтобы
выделить его структуры. Точный размер зависит от системной архитектуры.
Если Вы устанавливаете слишком маленькое значение
query_cache_size
, предупреждение произойдет, как описано в
разделе 9.10.3.3.
-
query_cache_type
Формат командной строки
| --query_cache_type=# |
Системная переменная
| Имя |
query_cache_type |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
0 |
Допустимые значения |
0 |
1 |
2 |
Установите тип кэша запроса. Установка GLOBAL задает
тип для всех клиентов, которые соединяются после того. Отдельные клиенты
могут установить SESSION , чтобы затронуть их собственное
использование кэша запроса. Возможные значения
показывают в следующей таблице.
Опция | Описание |
0 или OFF |
Не кэшировать результаты запроса. Отметьте, что это не освобождает буфер кэша
запроса. Чтобы сделать это, Вы должны установить
query_cache_size
= 0. |
1 или ON |
Кэшировать все результаты за исключением тех, которые начинаются с
SELECT SQL_NO_CACHE . |
2 или DEMAND |
Кэш только для запросов, которые начинаются с SELECT SQL_CACHE .
|
По умолчанию OFF .
Если сервер запущен с query_cache_type = 0,
это не приобретает кэш запроса mutex вообще, что означает, что кэш запроса
не может быть включен во время выполнения и уменьшены
издержки в выполнении запроса.
-
query_cache_wlock_invalidate
Формат командной строки
| --query_cache_wlock_invalidate
|
Системная переменная
| Имя |
query_cache_wlock_invalidate |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Обычно, когда один клиент приобретает блокировку WRITE на
таблице MyISAM , другие клиенты не заблокированы для запросов,
которые читают из таблицы, если результаты запроса присутствуют в кэше
запроса. Установка этой переменной к 1 при блокировке WRITE
лишает законной силы любые запросы в кэше запроса, которые обращаются к
таблице. Это вынуждает других клиентов, которые пытаются получить доступ к
таблице, ждать в то время, как блокировка взята.
-
query_prealloc_size
Формат командной строки
| --query_prealloc_size=# |
Системная переменная
| Имя |
query_prealloc_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
8192 |
Минимум |
8192 |
Максимум |
4294967295 |
Block Size |
1024 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
8192 |
Минимум |
8192 |
Максимум |
18446744073709551615 |
Block Size |
1024 |
Размер постоянного буфера, используемого для парсинга и выполнения
запроса. Этот буфер не освобожден между запросами. Если Вы выполняете сложные
запросы, большее значение
query_prealloc_size могло бы быть полезным в работе, потому
что это может уменьшить потребность в распределении памяти во время
операций выполнения запроса.
-
rand_seed1
rand_seed1 и
rand_seed2
существуют только как переменные сеанса и могут быть установлены, но не
считаны. Эти переменные показаны в
выводе SHOW VARIABLES .
Цель этих переменных состоит в том, чтобы поддержать репликацию функции
RAND() .
Для запросов, которые вызывают
RAND() , ведущее устройство передает два значения к ведомому
устройству, где они используются, чтобы отобрать генератор случайных чисел.
Ведомое устройство использует эти значения, чтобы установить переменные
сеанса rand_seed1 и
rand_seed2
так, чтобы RAND()
на ведомом устройстве производила то же самое значение, как на ведущем.
-
rand_seed2
См. описание для
rand_seed1 .
-
range_alloc_block_size
Формат командной строки
| --range_alloc_block_size=# |
Системная переменная
| Имя |
range_alloc_block_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
4096 |
Минимум |
4096 |
Максимум |
4294967295 |
Block Size |
1024 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
4096 |
Минимум |
4096 |
Максимум |
18446744073709547520 |
Block Size |
1024 |
Размер блоков, которые выделены, делая оптимизацию диапазона.
-
range_optimizer_max_mem_size
Формат командной строки
| --range_optimizer_max_mem_size=N
|
Системная переменная
| Имя |
range_optimizer_max_mem_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
8388608 |
Предел на потребление памяти для оптимизации диапазона.
Значение 0 означает отсутствие ограничения. Если план выполнения, который
рассматривает оптимизатор, использует метод доступа диапазона, но
оптимизатор оценивает, что объем памяти, необходимый для этого метода,
превысил бы предел, он оставляет этот план и рассматривает другие планы.
Для получения дополнительной информации см.
раздел 9.2.1.3.4.
-
rbr_exec_mode
Системная переменная
| Имя |
rbr_exec_mode
|
Область действия |
Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
STRICT |
Допустимые значения |
IDEMPOTENT |
STRICT |
Эта переменная переключает сервер между режимами
IDEMPOTENT и STRICT . IDEMPOTENT
вызывает подавление ошибок duplicate-key и no-key-found. Этот режим полезен,
когда переигрывание основанного на строке двоичного журнала
вызывает конфликты с существующими данными.
mysqlbinlog
использует этот режим, когда Вы устанавливаете опцию
--idempotent :
SET SESSION RBR_EXEC_MODE=IDEMPOTENT;
-
read_buffer_size
Формат командной строки
| --read_buffer_size=# |
Системная переменная
| Имя |
read_buffer_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
131072 |
Минимум |
8200 |
Максимум |
2147479552 |
Каждый поток, который делает последовательный просмотр для таблиц
MyISAM , выделяет буфер этого размера (в байтах) для каждой
таблицы, которую просматривает. Если Вы делаете много последовательных
просмотров, Вы могли бы хотеть увеличить это значение, которое по умолчанию
131072. Значение этой переменной должно быть кратным 4KB. Если это будет
установлено в значение, которое не является кратным 4KB, то его значение
будет округлено в меньшую сторону к самому близкому кратному числу.
Эта опция также используется в следующем контексте для
всех механизмов хранения:
и в одном другом особенном методе механизма хранения: чтобы определить
размер блока памяти для таблиц
MEMORY .
Максимальная допустимая установка для
read_buffer_size
2GB.
См. раздел 9.12.3.1.
-
read_only
Формат командной строки |
--read_only |
Системная переменная
| Имя |
read_only |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Когда read_only
включена, сервер не разрешает обновлений клиента кроме пользователей, которые
имеют привилегию SUPER .
Эта переменная отключена по умолчанию.
Сервер также поддерживает переменную
super_read_only
(отключена по умолчанию), которая имеет эти эффекты:
Даже с включенной read_only
сервер разрешает эти операции:
Обновления, выполненные ведомыми потоками, если сервер ведомое
устройство. В установках может быть полезно включить
read_only на
ведомых серверах, чтобы гарантировать, что ведомые устройства принимают
обновления только от главного сервера, а не от клиентов.
ANALYZE TABLE или
OPTIMIZE TABLE .
Цель режима только для чтения состоит в том, чтобы предотвратить изменения
структуры таблицы или содержания. Анализ и оптимизация их не меняют.
Это означает, например, что проверки непротиворечивости на ведомых
устройствах только для чтения могут быть выполнены с помощью
mysqlcheck --all-databases
--analyze.
- Операции на таблицах
TEMPORARY .
- Вставки в таблицы журнала (
mysql.general_log и
mysql.slow_log ), см.
раздел 6.4.1.
- Обновления Performance Schema, например, таблиц
UPDATE или
TRUNCATE TABLE .
Изменения read_only
на главном сервере не копируются к ведомым серверам. Значение может быть
установлено на ведомом сервере, независимом от установки
на ведущем устройстве.
Следующие условия относятся к попыткам включить
read_only
(включая неявные попытки, следующие из включения
super_read_only
):
read_rnd_buffer_size
Формат командной строки
| --read_rnd_buffer_size=# |
Системная переменная
| Имя |
read_rnd_buffer_size
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
262144 |
Минимум |
1 |
Максимум |
2147483647 |
Эта переменная используется для чтений из MyISAM
и, для любого механизма хранения, для оптимизации Multi-Range Read.
Читая строки из MyISAM в сортированном порядке после
сортировки ключей, строки считаны через этот буфер, чтобы избежать
дисковых поисков. См.
раздел 9.2.1.15.
Установка переменной к большому значению может улучшить
ORDER BY . Однако, это буфер, выделенный для каждого клиента,
таким образом, Вы не должны установить глобальную переменную в большое
значение. Вместо этого замените переменную сеанса только для тех клиентов,
которые должны выполнить большие запросы.
Максимальная допустимая установка для
read_rnd_buffer_size
2GB.
Для получения дополнительной информации об использовании памяти во время
различных операций см. раздел 9.12.3.1.
Для информации об оптимизации Multi-Range Read см.
раздел 9.2.1.13.
-
relay_log_purge
Формат командной строки
| --relay_log_purge |
Системная переменная
| Имя |
relay_log_purge |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
TRUE |
Отключает или включает автоматическую чистку файлов системного журнала
реле, как только они больше не необходимы. Значение по умолчанию 1
(ON ).
-
relay_log_space_limit
Формат командной строки
| --relay_log_space_limit=# |
Системная переменная
| Имя |
relay_log_space_limit |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
(32-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
4294967295 |
Допустимые значения
(64-bit platforms) | Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
18446744073709551615 |
Максимальное количество пространства, чтобы использовать для
всех журналов реле.
-
report_host
Формат командной строки
| --report-host=host_name |
Системная переменная
| Имя |
report_host
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Значение опции
--report-host .
-
report_password
Формат командной строки
| --report-password=name |
Системная переменная
| Имя |
report_password |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Значение опции
--report-password . Не то же самое, как пароль, который
используется для учетной записи пользователя репликации MySQL.
-
report_port
Формат командной строки
| --report-port=# |
Системная переменная
| Имя |
report_port
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
[slave_port] |
Минимум |
0 |
Максимум |
65535 |
Значение опции
--report-port .
-
report_user
Формат командной строки
| --report-user=name |
Системная переменная
| Имя |
report_user
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Значение опции
--report-user . Не то же самое, как название учетной записи
пользователя репликации MySQL.
-
require_secure_transport
Формат командной строки
| --require_secure_transport[={OFF|ON}]
|
Системная переменная
| Имя |
require_secure_transport |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Обязаны ли соединения клиента с сервером использовать некоторую форму
безопасного транспорта. Когда эта переменная включена, сервер разрешает
только соединения TCP/IP, которые используют SSL, или соединения, которые
используют файл сокета (Unix) или совместно используемую память (Windows).
Сервер отклоняет нережимные попытки соединения, которые терпят неудачу с
ошибкой
ER_SECURE_TRANSPORT_REQUIRED .
Эта способность добавляет учетной записи требования SSL, которые имеют
приоритет. Если учетная запись определена с REQUIRE SSL ,
включение
require_secure_transport не позволяет использовать учетную запись,
чтобы соединиться с использованием файла сокета Unix.
Для сервера возможно не иметь безопасные транспортные средства в наличии.
Например, сервер в Windows не поддерживает безопасных транспортных средств,
если запущен, не определяя сертификаты SSL или ключевые файлы и с выключенной
опцией shared_memory
. При этих условиях попытки включить
require_secure_transport при запуске заставляют сервер писать
сообщение в журнал ошибок и завершиться. Попытки включить переменную во время
выполнения терпят неудачу с ошибкой
ER_NO_SECURE_TRANSPORTS_CONFIGURED .
-
rpl_semi_sync_master_enabled
Системная переменная
| Имя |
rpl_semi_sync_master_enabled |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включена ли полусинхронная репликация на ведущем устройстве. Чтобы
включить или отключить плагин, установите эту переменную в
ON или OFF (1 или 0), соответственно.
Значение по умолчанию OFF .
Эта переменная доступна, только если основная сторона
полусинхронного плагина установлена.
-
rpl_semi_sync_master_timeout
Системная переменная
| Имя |
rpl_semi_sync_master_timeout |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
10000 |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
10000 |
Значение в миллисекундах, которое управляет, сколько времени ведущее
устройство ждет подтверждения от ведомого устройства перед синхронизацией и
возвратом к асинхронной репликации. Значение по умолчанию 10000 (10 секунд).
Эта переменная доступна, только если основная сторона
полусинхронного плагина установлена.
-
rpl_semi_sync_master_trace_level
Уровень трассировки полусинхронной репликации
на ведущем устройстве. Определены четыре уровня:
Эта переменная доступна, только если основная сторона
полусинхронного плагина установлена.
-
rpl_semi_sync_master_wait_for_slave_count
Число подтверждений, которое ведущее устройство должно получить за
транзакцию перед обработкой. По умолчанию
rpl_semi_sync_master_wait_for_slave_count
1 , что означает обработку после получения единственного ведомого
подтверждения. Работает лучше для маленьких значений этой переменной.
Например, если rpl_semi_sync_master_wait_for_slave_count
2 , то 2 ведомых устройства должны подтвердить получение
транзакции перед периодом тайм-аута, сконфигурированным
rpl_semi_sync_master_timeout для продолжения полусинхронной
репликации. Если меньше ведомых устройств подтверждает получение транзакции
во время периода тайм-аута, ведущее устройство
возвращается к нормальной репликации.
Это поведение также зависит от
rpl_semi_sync_master_wait_no_slave .
Эта переменная доступна, только если основная сторона
полусинхронного плагина установлена.
-
rpl_semi_sync_master_wait_no_slave
Ждет ли ведущее устройство периода тайм-аута, сконфигурированного
rpl_semi_sync_master_timeout , даже если количество ведомых
меньше числа ведомых устройств, сконфигурированных
rpl_semi_sync_master_wait_for_slave_count
во время периода тайм-аута.
Когда значение rpl_semi_sync_master_wait_no_slave =
ON (значение по умолчанию), допустимо число ведомых меньше
rpl_semi_sync_master_wait_for_slave_count
во время периода тайм-аута. Пока достаточно многие ведомые устройства
признают транзакцию прежде, чем период тайм-аута истечет,
полусинхронная репликация продолжается.
Когда значение rpl_semi_sync_master_wait_no_slave =
OFF , если количество ведомых меньше, чем число,
сконфигурированное в
rpl_semi_sync_master_wait_for_slave_count
в любое время во время периода тайм-аута, сконфигурированного
rpl_semi_sync_master_timeout , ведущее устройство
возвращается к нормальной репликации.
-
rpl_semi_sync_master_wait_point
Системная переменная
| Имя |
rpl_semi_sync_master_wait_point |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
AFTER_SYNC |
Допустимые значения |
AFTER_SYNC |
AFTER_COMMIT |
Эта переменная управляет пунктом, в котором полусинхронное ведущее
устройство ждет подтверждения от ведомого прежде, чем возвратить состояние
клиенту, который передал транзакцию. Эти значения разрешены:
AFTER_SYNC (значение по умолчанию): ведущее
устройство пишет каждую транзакцию в двоичный журнал и ведомому устройству,
и синхронизирует двоичный журнал с диском. Ведущее устройство ждет
подтверждение от ведомого после синхронизации. После получения подтверждения
ведущее устройство передает транзакцию механизму хранения и возвращает
результат клиенту, который тогда может продолжить работу.
AFTER_COMMIT : Ведущее устройство пишет каждую транзакцию
в двоичный журнал и ведомому устройству, синхронизирует двоичный журнал, и
передает транзакцию механизму хранения. Ведущее устройство ждет
подтверждение от ведомого. После получения ведущее устройство возвращает
результат клиенту, который тогда может продолжить работу.
Характеристики репликации этих настроек отличаются следующим образом:
С AFTER_SYNC все клиенты видят преданную транзакцию в
то же самое время: после того, как это было признано ведомым устройством и
передано механизму хранения на ведущем устройстве. Таким образом, все клиенты
видят те же самые данные по ведущему устройству.
В случае отказа все транзакции на ведущем устройстве, скопированы
ведомому устройству (сохранены в его журнале реле). Катастрофический отказ
ведущего устройства проходит без потерь на ведомом, потому
что ведомое современно.
- С
AFTER_COMMIT клиент, выпускающий транзакцию, получает
статус возврата только после того, как сервер передает данные механизму
хранения и получает подтверждение.
Если что-то идет не так, как надо, таким образом, что ведомое устройство
не обрабатывает транзакцию, то в случае катастрофического отказа, возможно,
что клиенты будут видеть потерю данных относительно того, что они видели
на ведущем устройстве.
С добавлением
rpl_semi_sync_master_wait_point в MySQL 5.7
создавалось ограничение совместимости версий, потому что это увеличивает
версию полусинхронного интерфейса: черверы для MySQL 5.7 и выше не работают с
полусинхронными плагинами ответа от более старых версий.
-
rpl_semi_sync_slave_enabled
Системная переменная
| Имя |
rpl_semi_sync_slave_enabled |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включена ли полусинхронная репликация на ведомом устройстве. Чтобы
включить или отключить плагин, установите эту переменную в
ON или OFF (1 или 0),
соответственно. Значение по умолчанию OFF .
-
rpl_semi_sync_slave_trace_level
Системная переменная
| Имя |
rpl_semi_sync_slave_trace_level |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
32 |
Уровень отладки полусинхронной репликации на ведомом устройстве. См.
rpl_semi_sync_master_trace_level для допустимых значений.
-
schema_definition_cache
Формат командной строки
| --schema_definition_cache=N |
Системная переменная
| Имя |
schema_definition_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
256 |
Максимум |
524288 |
Определяет предел для числа объектов определения схемы, используемых и
неиспользуемых, которое может быть сохранено в кэше объекта словаря.
Неиспользованные объекты определения схемы сохранены в кэше объекта
словаря только когда число используемых меньше емкость, определенная
schema_definition_cache .
Установка 0 определяет, что объекты определения схемы
сохранены в кэше объекта словаря только в то время, когда они используются.
См. раздел 15.4.
-
secure_auth
Устарела |
5.7.5 |
Формат командной строки
| --secure-auth |
Системная переменная
| Имя |
secure_auth
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Допустимые значения
| ON |
Если эта переменная включена, сервер блокирует соединения клиентам,
которые пытаются использовать учетные записи, которым сохранили пароли в
старом формате (pre-4.1).
Позвольте этой переменной предотвратить все использование паролей,
использующих старый формат (и следовательно опасную коммуникацию по сети).
Эта переменная устарела и будет удалена в будущем выпуске MySQL. Это
всегда включено и попытка отключить это производит ошибку.
Запуск сервера терпит неудачу с ошибкой, если эта переменная включена,
и таблицы привилегии находятся в формате pre-4.1.
Пароли, которые используют хеширующие методы pre-4.1,
менее безопасны, чем пароли, которые используют родной метод хеширования
пароля и должны быть обновлены.
secure_file_priv
Формат командной строки
| --secure-file-priv=dir_name
|
Системная переменная
| Имя |
secure_file_priv |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
platform specific |
Допустимые значения |
empty |
dirname |
NULL |
Эта переменная используется, чтобы ограничить эффект импорта данных и
экспортных операций, таких как
LOAD DATA ,
SELECT ... INTO OUTFILE и
LOAD_FILE() .
Эти операции разрешены только пользователям, которые имеют привилегию
FILE .
secure_file_priv
может быть установлена следующим образом:
Значение по умолчанию зависит от значения
INSTALL_LAYOUT
в CMake, как показано в следующей таблице.
Чтобы определить значение по умолчанию
secure_file_priv
явно, если Вы собираете пакет из исходных текстов, используйте
опцию
INSTALL_SECURE_FILE_PRIVDIR в CMake.
Значение INSTALL_LAYOUT |
Значение по цмолчанию secure_file_priv
|
STANDALONE , WIN |
Пусто |
DEB , RPM , SLES ,
SVR4 | /var/lib/mysql-files |
Иначе | mysql-files под
CMAKE_INSTALL_PREFIX value |
Чтобы установить значение по умолчанию
secure_file_priv
для встроенного сервера libmysqld , используйте опцию
INSTALL_SECURE_FILE_PRIV_EMBEDDEDDIR в
CMake. Значение по умолчанию для
этой опции NULL .
Сервер проверяет значение
secure_file_priv
при запуске и пишет предупреждение в журнал ошибок, если значение
небезопасно. Не-NULL считают небезопасным, если это пусто,
значение является каталогом данных или его подкаталогом, или это каталог,
который доступен всем пользователям. Если
secure_file_priv
установлен в несуществующий путь, сервер пишет сообщение об ошибке в
журнал ошибок и завершается.
-
server_id
Формат командной строки
| --server-id=# |
Системная переменная
| Имя |
server_id
|
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
0 |
Минимум |
0 |
Максимум |
4294967295 |
ID сервера, используемое в репликации, чтобы дать каждому ведущему и
ведомому устройствам уникальную идентичность. Эта переменная установлена
опцией --server-id
. Для каждого сервера, участвующего в репликации, Вы должны выбрать
положительное целое число в диапазоне от 1 до 232-1, чтобы
действовать как ID этого сервера.
-
session_track_gtids
Формат командной строки
| --session_track_gtids=[value]
|
Системная переменная
| Имя |
session_track_gtids |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
enumeration |
Значение по умолчанию |
OFF |
Допустимые значения |
OFF |
OWN_GTID |
ALL_GTIDS |
Управляет трекингом, чтобы получить GTID и возвратить их в пакете OK.
В зависимости от значения этой опции, в конце выполнения транзакции,
определенные GTID получены и добавлены к пакету OK.
Возможные наборы GTID, чтобы отследить:
См. раздел 25.8.7.65
.
-
session_track_schema
Формат командной строки
| --session_track_schema=# |
Системная переменная
| Имя |
session_track_schema |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Отслеживает ли сервер изменение названия схемы по умолчанию (базы данных)
в пределах текущего сеанса и делает эту информацию доступной для клиента,
когда изменения происходят.
Если уведомление включено, о любой установке схемы по умолчанию сообщают,
даже если новое имя схемы то же самое, как старое.
См. раздел 25.8.7.65
.
-
session_track_state_change
Формат командной строки
| --session_track_state_change=#
|
Системная переменная
| Имя |
session_track_state_change |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Отслеживает ли сервер изменение статуса текущего сеанса и уведомляет
клиента, когда изменения происходят. Статус сеанса состоит из этих значений:
Если включено, о любых изменениях состояния сеанса сообщают, даже если
новые значения те же самые, как старые.
session_track_state_change управляет только уведомлением о том,
когда изменения происходят, а не каковы эти изменения. Чтобы получить
уведомление для изменения имени схемы по умолчанию и системных значений
переменной сеанса, используйте
session_track_schema
и
session_track_system_variables .
См. раздел 25.8.7.65
.
-
session_track_system_variables
Формат командной строки
| --session_track_system_variables=#
|
Системная переменная
| Имя |
session_track_system_variables |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
time_zone, autocommit, character_set_client,
character_set_results, character_set_connection |
Отслеживает ли сервер системные переменные сеанса и делает ли эту
информацию доступной для клиента, когда изменения происходят. Значение:
список разделенных запятой переменных, для которых можно отследить изменения.
По умолчанию для уведомления включают
time_zone ,
autocommit ,
character_set_client
,
character_set_results и
character_set_connection . Последние три переменные затронуты
SET NAMES .
Специальное значение * заставляет сервер отслеживать
изменения всех переменных сеанса. Если дано, это значение должно быть
определено отдельно без определенных системных имен переменной.
Уведомление происходит для всех назначений на прослеженные системные
переменные сеанса, даже если новые значения те же самые, как старые.
См. раздел 25.8.7.65
.
-
sha256_password_auto_generate_rsa_keys
Формат командной строки
| --sha256_password_auto_generate_rsa_keys[
={OFF|ON}] |
Системная переменная
| Имя |
sha256_password_auto_generate_rsa_keys |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
Эта переменная доступна, если сервер был собран, используя OpenSSL (см.
OpenSSL (see раздел 7.4.1).
Это управляет, генерирует ли сервер частные/общественные файлы ключевой пары
RSA в каталоге данных, если они не существуют.
При запуске сервер автоматически производит
файлы ключевой пары RSA в каталоге данных, если
sha256_password_auto_generate_rsa_keys включена, никакие опции RSA
не определены и файлы RSA отсутствуют в каталоге данных. Эти файлы включают
безопасный обмен паролями, использующий RSA по незашифрованным соединениям
для учетных записей, заверенных плагином sha256_password , см.
раздел 7.5.1.2.
См. раздел
7.4.6.1.
auto_generate_certs
связана, но не управляет генерацией сертификатов SSL и ключевых
файлов, необходимых для безопасных соединений, используя SSL.
-
sha256_password_private_key_path
Системная переменная
| Имя |
sha256_password_private_key_path |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
private_key.pem |
Эта переменная доступна, если MySQL был собран, используя OpenSSL (см.
раздел 7.4.1).
Значение: путь частного ключевого файла RSA для плагина аутентификации
sha256_password . Если файл называют как относительный путь, он
интерпретируется относительно каталога серверных данных. Файл должен быть в
формате PEM. Поскольку это хранит частный ключ, его режим доступа должен быть
ограничен так, чтобы только сервер MySQL мог читать это.
См. раздел 7.5.1.2
.
-
sha256_password_proxy_users
Формат командной строки
| --sha256_password_proxy_users=[={OFF|ON}]
|
Системная переменная
| Имя |
sha256_password_proxy_users |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная управляет поддерживает ли
встроенный плагин аутентификации sha256_password пользователей
по доверенности. Это не имеет никакого эффекта, если
check_proxy_users
включена. См. раздел 7.3.10.
-
sha256_password_public_key_path
Системная переменная
| Имя |
sha256_password_public_key_path |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
public_key.pem |
Эта переменная доступна, если MySQL был собран, используя OpenSSL (см.
раздел 7.4.1).
Значение это путь к файлу открытого ключа RSA для плагина аутентификации
sha256_password . Если файл называют как относительный путь, он
интерпретируется относительно каталога данных сервера. Файл должен быть в
формате PEM. Поскольку это хранит открытый ключ, копии могут быть свободно
распределены пользователям клиента. Клиенты, которые явно определяют открытый
ключ, соединяясь с сервером, используя шифрование пароля RSA, должны
использовать тот же самый открытый ключ в качестве используемого сервером.
См. раздел 7.5.1.2
.
-
shared_memory
Формат командной строки
| --shared_memory[={0,1}] |
Системная переменная
| Имя |
shared_memory |
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Windows |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
FALSE |
Только Windows. Разрешает ли сервер соединения
совместно используемой памяти.
-
shared_memory_base_name
Формат командной строки
| --shared_memory_base_name=name
|
Системная переменная
| Имя |
shared_memory_base_name |
Область действия |
Глобальная |
Динамическая |
Нет |
Платформа |
Windows |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
MYSQL |
Только Windows. Название совместно используемой памяти, чтобы использовать
для соединений совместно используемой памяти. Это полезно, выполняя много
копий MySQL на единственной физической машине. Имя по умолчанию
MYSQL . Имя является чувствительным к регистру.
-
show_compatibility_56
Устарела |
5.7.6 |
Формат командной строки
| --show_compatibility_56[={OFF|ON}] |
Системная переменная
| Имя |
show_compatibility_56 |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
INFORMATION_SCHEMA имеет таблицы, которые содержат систему и
информацию о переменной состояния (см. разделы
22.10 и
22.9). Performance Schema
также содержит систему и таблицы переменных состояния (см. разделы
23.9.13 и
23.9.14).
Таблицы Performance Schema предназначены, чтобы заменить таблицы
INFORMATION_SCHEMA , которые устарели с MySQL 5.7.6
и будут удалены в будущем выпуске MySQL.
Для совета относительно перемещения с
INFORMATION_SCHEMA на Performance Schema см.
раздел
23.17. Чтобы помочь в перемещении, Вы можете использовать переменную
show_compatibility_56
, которая затрагивает, включает ли совместимость MySQL 5.6
относительно того, как информация о переменной системы и состояния обеспечена
таблицами INFORMATION_SCHEMA и Performance Schema, а также
запросами SHOW VARIABLES и
SHOW STATUS .
show_compatibility_56 устарела, потому что ее единственная цель
состоит в том, чтобы разрешить управление устаревшей системой и источниками
информации о состоянии, которые будут удалены в будущем выпуске MySQL. Когда
те источники будут удалены,
show_compatibility_56 не будет иметь никакой цели и
будет удалена тоже.
Следующее обсуждение описывает эффекты
show_compatibility_56 :
Для лучшего понимания сильно рекомендуется, чтобы Вы также
прочитали эти разделы:
Обзор
show_compatibility_56
show_compatibility_56 затрагивает эти аспекты работы сервера
относительно переменных состояния и системы:
Этот список суммирует эффекты
show_compatibility_56
с дополнительными деталями, данными позже:
Если
show_compatibility_56 = ON ,
совместимость с MySQL 5.6 включена. Более старые источники информации
(SHOW , таблицы INFORMATION_SCHEMA )
производят тот же самый вывод как в MySQL 5.6.
- Если
show_compatibility_56 = OFF ,
совместимость с MySQL 5.6 отключена. Выбор из таблиц
INFORMATION_SCHEMA производит ошибку, потому что таблицы
Performance Schema предназначены, чтобы заменить их.
INFORMATION_SCHEMA устарела в MySQL 5.7.6
и будет удалена в будущем выпуске MySQL.
Получить информацию о переменной состояния, когда
show_compatibility_56=OFF , можно с помощью
Performance Schema или запроса SHOW .
Когда
show_compatibility_56=OFF ,
SHOW VARIABLES и
SHOW STATUS
выводят на экран строки из таблиц Performance Schema
global_variables ,
session_variables ,
global_status и
session_status .
Эти таблицы читаемы всеми даже без привилегии
SELECT , то есть
привилегия SELECT
не требуется, чтобы использовать SHOW .
Несколько переменных состояния Slave_xxx
доступны из SHOW STATUS
, когда
show_compatibility_56 = ON . Если
show_compatibility_56
= OFF , некоторые из тех переменных не выставлены
SHOW STATUS . Информация,
которую они предоставляют, доступна в связанных с
Performance Schema таблицах.
show_compatibility_56 не имеет никакого эффекта на использование
доступа к переменным с нотацией @@ :
@@GLOBAL.var_name ,
@@SESSION.var_name ,
@@var_name .
show_compatibility_56 не имеет никакого эффекта на использование
встроенного сервера, который производит совместимый с 5.6 вывод
во всех случаях.
Следующие описания детализируют эффект установки
show_compatibility_56
в ON или OFF
в контекстах, в которых применяется эта переменная.
Влияние show_compatibility_56 на запрос SHOW
SHOW GLOBAL VARIABLES :
ON : Вывод MySQL 5.6.
OFF : Вывод выводит на экран строки из таблицы Performance
Schema
global_variables .
SHOW [SESSION | LOCAL] VARIABLES
:
ON : Вывод MySQL 5.6.
OFF : Вывод выводит на экран строки из таблицы Performance
Schema
session_variables .
SHOW GLOBAL STATUS :
SHOW [SESSION | LOCAL] STATUS
:
ON : Вывод MySQL 5.6.
OFF : Вывод выводит на экран строки из таблицы Performance
Schema
session_status и счетчики выполнения запроса
Com_xxx .
Действие show_compatibility_56 на INFORMATION_SCHEMA
Таблицы INFORMATION_SCHEMA
(GLOBAL_VARIABLES ,
SESSION_VARIABLES ,
GLOBAL_STATUS и
SESSION_STATUS ):
Действие
show_compatibility_56 на Performance Schema
Таблицы Performance Schema:
Таблицы переменных состояния Performance Schema:
Действие show_compatibility_56 на ведомые переменные состояния
Ведомые переменные состояния:
Действие show_compatibility_56 на FLUSH STATUS
FLUSH STATUS :
ON : Этот запрос производит поведение MySQL 5.6.
Это добавляет, что переменные состояния сеанса текущего потока оцениваются к
глобальным значениям и сбрасывает значения сеанса к нолю. Некоторые
глобальные переменные могут быть сброшены к нолю также. Это также сбрасывает
счетчики для ключевых кэшей (по умолчанию и названный) к нолю и устанавливает
Max_used_connections
к текущему числу открытых соединений.
OFF : Этот запрос добавляет состояние сеанса всех активных
сеансов в глобальные переменные состояния, сбрасывает состояние всех активных
сеансов и сбрасывает учетную запись, узел и пользовательские значения
состояния разъединенных сеансов.
show_old_temporals
Устарела |
5.7.6 |
Формат командной строки
| --show_old_temporals={OFF|ON} |
Системная переменная
| Имя |
show_old_temporals |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включает ли вывод SHOW CREATE
TABLE комментарии, чтобы отметить временные столбцы, которые были
в формате pre-5.6.4 (TIME ,
DATETIME и
TIMESTAMP без поддержки
дробных частей секунд). Эта переменная отключена по умолчанию. Если включена,
вывод SHOW CREATE TABLE
похож на это:
CREATE TABLE `mytbl` (
`ts` timestamp /* 5.5 binary format */ NOT NULL DEFAULT CURRENT_TIMESTAMP,
`dt` datetime /* 5.5 binary format */ DEFAULT NULL,
`t` time /* 5.5 binary format */ DEFAULT NULL
) DEFAULT CHARSET=latin1
Вывод для столбца COLUMN_TYPE таблицы
INFORMATION_SCHEMA.COLUMNS
затронут так же.
Эта переменная устарела и будет удалена в будущем выпуске MySQL.
-
skip_external_locking
Формат командной строки
| --skip-external-locking |
Системная переменная
| Имя |
skip_external_locking |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
ON |
OFF , если
mysqld использует внешнюю блокировку (системную
блокировку), ON , если внешняя блокировка отключена. Это
затрагивает только табличный доступ к
MyISAM .
Эта переменная установлена опцией
--external-locking
или
--skip-external-locking .
Внешняя блокировка отключена по умолчанию.
Внешняя блокировка затрагивает только доступ к
MyISAM .
См. раздел 9.11.5.
-
skip_name_resolve
Формат командной строки
| --skip-name-resolve |
Системная переменная
| Имя |
skip_name_resolve |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Эта переменная установлена от значения опции
--skip-name-resolve . Если она OFF , то
mysqld
решает имена хоста, проверяя соединения клиента. Если это ON ,
mysqld
использует только номера IP, в этом случае все значения столбцов
Host таблиц привилегий должны быть IP-адресами или
localhost . См. раздел 9.12.4.2
.
-
skip_networking
Формат командной строки
| --skip-networking |
Системная переменная
| Имя |
skip_networking |
Область действия |
Глобальная |
Динамическая |
Нет |
ON , если сервер разрешает только местные (не TCP/IP)
соединения. В Unix местные соединения используют файл сокета. В Windows
местные соединения используют названный канал или совместно используемую
память. Эта переменная может быть установлена в ON опцией
--skip-networking
.
-
skip_show_database
Формат командной строки
| --skip-show-database |
Системная переменная
| Имя |
skip_show_database |
Область действия |
Глобальная |
Динамическая |
Нет |
Это препятствует тому, чтобы пользователи могли использовать запрос
SHOW DATABASES , если они не
имеют привилегии SHOW
DATABASES . Это может улучшить безопасность, если у Вас есть
беспокойство по поводу пользовательской возможности видеть, что базы данных
принадлежат другим пользователям. Эффект зависит от привилегии
SHOW DATABASES :
если значение переменной ON ,
SHOW DATABASES разрешен только пользователям, которые имеют
привилегию SHOW DATABASES
, и запрос выводят на экран все имена базы данных. Если значение
OFF , SHOW DATABASES
разрешен всем пользователям, но выводит на экран названия только
тех баз данных, для которых пользователь имеет привилегию
SHOW DATABASES
или другие привилегии. Отметьте, что любую
глобальную привилегию считают привилегией для базы данных.
-
slow_launch_time
Формат командной строки
| --slow_launch_time=# |
Системная переменная
| Имя |
slow_launch_time |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
2 |
Если создание потока занимает больше времени, чем это значение
секунд, сервер увеличивает переменную
Slow_launch_threads .
-
slow_query_log
Формат командной строки
| --slow-query-log |
Системная переменная
| Имя |
slow_query_log |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Включен ли медленный журнал запроса. Значение может быть 0 (или
OFF ), чтобы отключить журнал, или 1 (или ON ), чтобы
включить журнал. Значение по умолчанию зависит от опции
--slow_query_log .
Местом назначения для вывода журнала управляет системная переменная
log_output ,
если это значение NONE , никакие записи журнала не написаны, даже
если журнал включен.
Понятие "медленный" определено значением
переменной long_query_time
, см. раздел 6.4.5.
-
slow_query_log_file
Формат командной строки
| --slow-query-log-file=file_name
|
Системная переменная
| Имя |
slow_query_log_file |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
file name |
Значение по умолчанию |
host_name-slow.log |
Название медленного файла системного журнала запроса. Значение по
умолчанию host_name -slow.log ,
но начальное значение может быть изменено опцией
--slow_query_log_file .
-
socket
Формат командной строки
| --socket={file_name|pipe_name}
|
Системная переменная
| Имя |
socket
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения
| Тип |
string |
Значение по умолчанию |
/tmp/mysql.sock |
В Unix эта переменная задает название файла сокета, который используется
для местных соединений клиента. Значение по умолчанию
/tmp/mysql.sock .
Для некоторых форматов дистрибутивов каталог мог бы отличаться,
например, /var/lib/mysql для RPM.
В Windows эта переменная задает название названного канала, который
используется для местных соединений клиента. Значение по умолчанию
MySQL (не чувствительно к регистру).
-
sort_buffer_size
Формат командной строки
| --sort_buffer_size=# |
Системная переменная
| Имя |
sort_buffer_size |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
(Windows) | Тип |
integer |
Значение по умолчанию |
262144 |
Минимум |
32768 |
Максимум |
4294967295 |
Допустимые значения
(Other, 32-bit platforms) | Тип
|
integer |
Значение по умолчанию |
262144 |
Минимум |
32768 |
Максимум |
4294967295 |
Допустимые значения
(Other, 64-bit platforms) | Тип
|
integer |
Значение по умолчанию |
262144 |
Минимум |
32768 |
Максимум |
18446744073709551615 |
Каждый сеанс, который должен выполнить сортировку, выделяет буфер этого
размера. sort_buffer_size
не является определенным для любого механизма хранения и
применяется в общей манере для оптимизации. В минимуме
sort_buffer_size
должно быть достаточно большим, чтобы разместить пятнадцать кортежей в
буфере сортировки. Кроме того, увеличение значения
max_sort_length
может потребовать увеличения значения
sort_buffer_size
. См. раздел 9.2.1.15.
Если Вы видите много сообщений
Sort_merge_passes
в секунду в выводе SHOW GLOBAL
STATUS , Вы можете рассмотреть увеличение
sort_buffer_size
, чтобы ускорить ORDER BY или GROUP BY , которые
не могут быть улучшены с оптимизацией запроса или улучшением индекса.
Оптимизатор пытается рассчитать, сколько места необходимо, но может
выделить больше, до предела. Установка этого больше, чем необходимо глобально
замедлит большинство запросов. Лучше увеличивать это как установку сеанса и
только для сеансов, которые нуждаются в большем размере. В Linux есть пороги
256 КБ и 2 МБ, где большие значения могут значительно замедлить распределение
памяти, таким образом, Вы должны рассмотреть значения ниже одного из этих
значений. Экспериментируйте, чтобы найти лучшее значение для Вашей рабочей
нагрузки. См. раздел B.5.3.5.
Максимальная допустимая установка для
sort_buffer_size
4GB-1. Большие значения разрешены для 64-битовых платформ (кроме 64-битной
Windows, для которой большие значения являются
усеченными к 4GB-1 с предупреждением).
-
sql_auto_is_null
Системная переменная
| Имя |
sql_auto_is_null |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
sql_auto_is_null |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
0 |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
0 |
Если эта переменная установлена в 1, то после запроса, который успешно
вставляет автоматически произведенное значение
AUTO_INCREMENT , Вы можете найти значение, делая
запрос следующей формы:
SELECT * FROM tbl_name WHERE auto_col IS NULL
Если запрос возвращает строку, значение то же самое, как будто Вы вызвали
LAST_INSERT_ID() ,
см. раздел 13.14. Если нет
успешно вставленного AUTO_INCREMENT ,
SELECT не возвращает строки.
Поведение получения AUTO_INCREMENT при использовании
IS NULL
используется некоторыми программами ODBC, такими как Access. См.
Obtaining Auto-Increment Values.
Это поведение может быть отключено, устанавливая
sql_auto_is_null
в 0.
Значение по умолчанию
sql_auto_is_null
0.
-
sql_big_selects
Системная переменная
| Имя |
sql_big_selects |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
sql_big_selects |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
1 |
Если установлено в 0, MySQL аварийно прекращает
SELECT , которые, вероятно, займут
очень долгое время (то есть, запросы, для которых оптимизатор оценивает, что
число исследованных строк превышает значение
max_join_size ).
Это полезно когда нецелесообразное WHERE было сделано. Значение
по умолчанию для нового соединения 1, которое разрешает все
SELECT .
Если Вы устанавливаете
max_join_size к значению кроме DEFAULT ,
sql_big_selects
установлена в 0.
-
sql_buffer_result
Системная переменная
| Имя |
sql_buffer_result |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
0 |
Если установлена в 1,
sql_buffer_result результаты
SELECT будут помещены во временные
таблицы. Это помогает MySQL освободить табличные блокировки раньше и может
быть выгодно в случаях, где требуется много времени, чтобы послать результаты
клиенту. Значение по умолчанию 0.
-
sql_log_bin
Системная переменная
| Имя |
sql_log_bin
|
Область действия |
Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
sql_log_bin
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
boolean |
Сделано ли журналирование к двоичному журналу. Значение по умолчанию 1
(журналирование включено). Чтобы изменить журналирование для текущего сеанса,
измените значение сеанса для этой переменной. Пользователь сеанса должен
иметь привилегию SUPER ,
чтобы установить эту переменную.
Установка этой переменной в 0 препятствует тому, чтобы GTID был
назначен на транзакции в двоичном журнале. Если Вы используете
GTID для репликации, это означает, что, даже когда двоичное журналирование
позже включено еще раз, GTID, написанные в журнал с этого пункта, не
составляют транзакций, которые произошли во время отключения журналирования,
и те транзакции потеряны.
В MySQL 8.0 невозможно установить @@session.sql_log_bin в
пределах транзакции или подзапроса (Bug #53437).
-
sql_log_off
Системная переменная
| Имя |
sql_log_off
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Системная переменная
| Имя |
sql_log_off
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
0 |
Сделано ли журналирование к общему журналу запроса. Значение по умолчанию
0 (сделано журналирование). Чтобы изменить журналирование для текущего
сеанса, измените значение сеанса этой переменной. Пользователь сеанса должен
иметь привилегию SUPER ,
чтобы установить эту опцию. Значение по умолчанию 0.
-
sql_mode
Формат командной строки
| --sql-mode=name |
Системная переменная
| Имя |
sql_mode
|
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения
| Тип |
set |
Значение по умолчанию |
ONLY_FULL_GROUP_BY STRICT_TRANS_TABLES NO_ZERO_IN_DATE
NO_ZERO_DATE ERROR_FOR_DIVISION_BY_ZERO NO_AUTO_CREATE_USER
NO_ENGINE_SUBSTITUTION |
Допустимые значения |
ALLOW_INVALID_DATES |
ANSI_QUOTES |
ERROR_FOR_DIVISION_BY_ZERO |
HIGH_NOT_PRECEDENCE |
IGNORE_SPACE |
NO_AUTO_CREATE_USER |
NO_AUTO_VALUE_ON_ZERO |
NO_BACKSLASH_ESCAPES |
NO_DIR_IN_CREATE |
NO_ENGINE_SUBSTITUTION |
NO_FIELD_OPTIONS |
NO_KEY_OPTIONS |
NO_TABLE_OPTIONS |
NO_UNSIGNED_SUBTRACTION |
NO_ZERO_DATE |
NO_ZERO_IN_DATE |
ONLY_FULL_GROUP_BY |
PAD_CHAR_TO_FULL_LENGTH |
PIPES_AS_CONCAT |
REAL_AS_FLOAT |
STRICT_ALL_TABLES |
STRICT_TRANS_TABLES |
Текущий режим SQL сервера, который может быть установлен динамически. См.
раздел 6.1.8.
Программы установки MySQL могут сконфигурировать режим SQL во
время процесса установки.
Если режим SQL отличается от значения по умолчанию или от того, что Вы
ожидаете, проверьте на установку в файле опции, который сервер
читает при запуске.
sql_notes
Если установлено в 1 (значение по умолчанию), предупреждения уровня
Note увеличивают warning_count , а сервер
делает их запись. Если установлено в 0, предупреждения Note
не увеличивают warning_count
, а сервер не делает их запись.
mysqldump
включает вывод, чтобы установить эту переменную в 0 так, чтобы перезагрузка
файла дампа не произвела предупреждения для событий, которые не затрагивают
целостность работы перезагрузки.
-
sql_quote_show_create
Если установлено в 1 (значение по умолчанию), сервер заключает
идентификаторы в кавычки для
SHOW CREATE TABLE и
SHOW CREATE DATABASE .
Если установлено в 0, заключение в кавычки отключено. Эта опция включена по
умолчанию так, чтобы репликация работала на идентификаторы, которые требуют
заключения в кавычки. См. разделы
14.7.5.10 и 14.7.5.6.
-
sql_safe_updates
Если установлено в 1, MySQL аварийно завершает
UPDATE или
DELETE , которые не используют ключ
в WHERE или LIMIT . Определенно, у запросов
UPDATE должен быть
WHERE , который использует ключ или LIMIT или то и
другое. DELETE должны иметь то и
другое. Это позволяет поймать
UPDATE или
DELETE , где ключи не используются
должным образом и это, вероятно, изменило бы или удалило бы большое
количество строк. Значение по умолчанию 0.
-
sql_select_limit
Системная переменная
| Имя |
sql_select_limit |
Область действия |
Глобальная, Сеансовая |
Динамическая |
Да |
Допустимые значения |
Тип |
integer |
Максимальное количество строк, чтобы возвратить из
SELECT .
Значение по умолчанию для нового соединения это максимальное количество
строк, которые сервер разрешает для таблицы. Типичные значения по умолчанию:
(232)-1 или (264)-1. Если Вы изменили предел, значение
по умолчанию может быть восстановлено, назначая значение DEFAULT
.
Если SELECT имеет
LIMIT , то LIMIT имеет приоритет перед значением
sql_select_limit
.
-
sql_warnings
Эта переменная управляет производят ли однострочные
INSERT
информационную строку, если предупреждения происходят.
Значение по умолчанию 0. Установите значение в 1, чтобы
произвести информационную строку.
-
ssl_ca
Формат командной строки
| --ssl-ca=file_name |
Системная переменная
| Имя |
ssl_ca
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Путь к файлу со списком доверенных SSL CA.
-
ssl_capath
Формат командной строки
| --ssl-capath=dir_name |
Системная переменная
| Имя |
ssl_capath
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Путь к каталогу, который содержит сертификаты доверенных
SSL CA в формате PEM.
-
ssl_cert
Формат командной строки
| --ssl-cert=file_name |
Системная переменная
| Имя |
ssl_cert
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Название файла сертификата SSL, чтобы использовать для того, чтобы
основать безопасное соединение.
-
ssl_cipher
Формат командной строки
| --ssl-cipher=name |
Системная переменная
| Имя |
ssl_cipher
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Список допустимых шифров, чтобы использовать для шифрования SSL.
-
ssl_crl
Формат командной строки
| --ssl-crl=file_name |
Системная переменная
| Имя |
ssl_crl
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Путь к файлу, содержащему список аннулированных сертификатов
в формате PEM. Аннулирование работает для дистрибутивов MySQL, собранных,
используя OpenSSL (но не yaSSL). См.
раздел 7.4.1.
-
ssl_crlpath
Формат командной строки
| --ssl-crlpath=dir_name |
Системная переменная
| Имя |
ssl_crlpath
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
directory name |
Путь к каталогу, который содержит файлы, содержащие списки аннулирования
сертификатов в формате PEM. Аннулирование работает для дистрибутивов MySQL,
собранных, используя OpenSSL (но не yaSSL). См.
раздел 7.4.1.
-
ssl_key
Формат командной строки
| --ssl-key=file_name |
Системная переменная
| Имя |
ssl_key
|
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
file name |
Название файла ключа SSL, чтобы использовать для того, чтобы
основать безопасное соединение.
-
stored_program_cache
Формат командной строки
| --stored-program-cache=# |
Системная переменная
| Имя |
stored_program_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
16 |
Максимум |
524288 |
Устанавливает мягкий верхний предел для числа кэшируемых сохраненных
подпрограмм на соединение. Значение этой переменной определено с точки зрения
числа сохраненных подпрограмм, проводимых в каждом из этих двух кэшей,
поддержанных MySQL Server для, соответственно, хранимых процедур и функций.
Всякий раз, когда сохраненная подпрограмма выполнена, этот размер кэша
проверен прежде, чем запрос первого или верхнего уровня в подпрограмме
разобран, если число подпрограмм того же самого типа (хранимые процедуры или
функции) превышает предел, определенный этой переменной, соответствующий кэш
сбрасывается, и память, ранее выделенная для кэшируемых объектов,
освобождена. Это позволяет сбросить кэш безопасно, даже когда есть
зависимости между сохраненными подпрограммами.
Кэши хранимых процедур и функций существуют параллельно с сохраненным
разделением кэша определения программы
dictionary
object cache. Кэши хранимых процедур и функций работают для
соединения в то время, как кэш определения программы использован совместно.
У существования объектов в кэшах хранимых процедур и функций
нет никакой зависимости от существования объектов в сохраненном кэше
определения программы, и наоборот. Для получения дополнительной информации
см. раздел 15.4.
-
stored_program_definition_cache
Формат командной строки
| --stored_program_definition_cache=N
|
Системная переменная
| Имя |
stored_program_definition_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
256 |
Максимум |
524288 |
Определяет предел для числа хранивмых объектов определения программы,
которые могут быть сохранены в кэше объекта словаря.
Неиспользованные объекты определения программы сохранены в кэше объекта
словаря только когда используемое число меньше емкости, определенной
stored_program_definition_cache .
Установка 0 означает хранить объекты определения программы,
в кэше объекта словаря только в то время, как они используются.
Сохраненное разделение кэша определения программы существует параллельно с
кэшами процедур и функций, которые сконфигурированы, используя опцию
stored_program_cache .
Опция
stored_program_cache устанавливает мягкий верхний предел для числа
кэшируемых хранимых процедур или функций на соединение, и предел проверен
каждый раз, когда соединение выполняет хранимую процедуру или функцию.
Сохраненное разделение кэша определения программы, с другой стороны, является
совместно используемым кэшем, который хранит сохраненные объекты определения
программы в других целях. У существования объектов в сохраненном разделении
кэша определения программы нет никакой зависимости от существования объектов
в кэшах хранимых процедур или функций, и наоборот.
См. раздел 15.4.
-
super_read_only
Формат командной строки
| --super_read_only[={OFF|ON}]
|
Системная переменная
| Имя |
super_read_only |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
boolean |
Значение по умолчанию |
OFF |
Если read_only
включена, сервер разрешает, чтобы клиент обновил данные только от имени
пользователей, которые имеют привилегию
SUPER , если
super_read_only
тоже включена, сервер запрещает обновления даже от пользователей, которые
имеют привилегию SUPER .
Изменения
super_read_only на главном сервере не копируются к ведомым
серверам. Значение может быть установлено на ведомом сервере, независимо от
установки на ведущем устройстве.
-
system_time_zone
Системная переменная
| Имя |
system_time_zone |
Область действия |
Глобальная |
Динамическая |
Нет |
Допустимые значения |
Тип |
string |
Системный часовой пояс сервера. Когда сервер начинает выполняться, он
наследует установку часового пояса от машинных значений по умолчанию,
возможно, измененных окружающей средой учетной записи, используемой для того,
чтобы выполнить сервер или скрипт запуска. Значение используется, чтобы
установить
system_time_zone . Как правило, часовой пояс определен переменной
окружения TZ . Это также может быть определено, используя опцию
--timezone
в скрипте mysqld_safe
.
system_time_zone
отличается от time_zone
. Хотя у них могло бы быть то же самое значение, последняя
переменная используется, чтобы инициализировать часовой пояс для каждого
клиента, который соединяется. См.
раздел 11.6.
-
tablespace_definition_cache
Формат командной строки
| --tablespace_definition_cache=N
|
Системная переменная
| Имя |
tablespace_definition_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
256 |
Максимум |
524288 |
Определяет предел для числа объектов определения табличного пространства,
которые могут быть сохранены в кэше объекта словаря.
Неиспользованные объекты определения табличного пространства
сохранены в кэше объекта словаря только, когда число меньше емкости,
определенной tablespace_definition_cache .
Установка 0 предписывает, что
объекты определения табличного пространства сохранены в кэше объекта словаря
только в то время, когда они используются.
См. раздел 15.4.
-
table_definition_cache
Системная переменная
| Имя |
table_definition_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
-1 (autosized) |
Минимум |
400 |
Максимум |
524288 |
Допустимые значения
| Тип |
integer |
Значение по умолчанию |
256 |
Минимум |
256 |
Максимум |
524288 |
Число табличных определений, которые могут быть сохранены в кэше
определения. Если Вы используете большое количество таблиц, Вы можете создать
большой табличный кэш определения, чтобы ускорить открытие таблиц. Табличный
кэш определения занимает меньше места и не использует описатели файла, в
отличие от нормального табличного кэша.
Минимальное значение 400. Значение по умолчанию основано на
следующей формуле с пределом в 2000:
400 + (table_open_cache / 2)
Для InnoDB
table_definition_cache действует как мягкий предел для числа
открытых таблиц в кэше словаря данных InnoDB . Если число
открытых таблиц превышает
table_definition_cache , LRU начинает отмечать таблицы для
вычеркивания из кэша и в конечном счете удаляет их из кэша словаря данных.
Предел помогает обратиться к ситуациям, в которых существенное количество
памяти использовалось бы, чтобы кэшировать редко используемые таблицы до
следующего перезапуска сервера. Число табличных случаев с кэшируемыми
метаданными могло быть выше чем предел, определенный
table_definition_cache , поскольку системные таблицы
InnoDB , а также родительские и дочерние таблицы с отношениями
внешнего ключа не помещены в список LRU и не подвергаются
вычеркиванию из памяти.
Дополнительно
table_definition_cache определяет мягкий предел для числа
табличных пространств InnoDB
file-per-table, которые могут быть открыты, что также управляется
innodb_open_files
. Если установлены
table_definition_cache и
innodb_open_files
, самая высокая установка используется. Если никакая переменная не
установлена, используется
table_definition_cache , у которой есть более высокое
значение по умолчанию. Если число открытых дескрипторов табличного
пространства превышает предел, определенный
table_definition_cache или
innodb_open_files
, LRU ищет в списке файл табличного пространства LRU файлы, которые
полностью сброшены и в настоящее время не расширяются. Этот процесс выполнен
каждый раз, когда новое табличное пространство открыто. Если нет никаких
неактивных табличных пространств, никакие файлы
табличного пространства не закрыты.
Табличный кэш определения существует параллельно с табличным разделением
кэша определения
dictionary object cache. Оба кэша хранят табличные определения, но служат
различным частям сервера MySQL. У объектов в одном кэше нет никакой
зависимости от объектов в другом. Для получения дополнительной информации см.
раздел 15.4.
-
table_open_cache
Системная переменная
| Имя |
table_open_cache |
Область действия |
Глобальная |
Динамическая |
Да |
Допустимые значения
| <
|