17.8.12 Включение автоматической конфигурации InnoDB для выделенного сервера MySQL
При запуске сервера с --innodb-dedicated-server, InnoDB автоматически вычисляет значения и устанавливает следующие системные переменные:
Рекомендуется использовать --innodb-dedicated-server только в том случае, если экземпляр MySQL находится на выделенном сервере, где он может использовать все доступные системные ресурсы — например, если вы запускаете MySQL Server в контейнере Docker или виртуальной машине, предназначенной только для MySQL. Использование --innodb-dedicated-server не рекомендуется, если экземпляр MySQL разделяет системные ресурсы с другими приложениями.
Значение каждой затронутой переменной определяется и применяется --innodb-dedicated-server, как описано в следующем списке:
-
Размер буферного пула вычисляется в соответствии с объёмом памяти, обнаруженной на сервере, как показано в следующей таблице:
Таблица 17.8 Автоматически настроенный размер буферного пула
Таблица 17.8 Автоматически настроенный размер буферного пула Обнаруженная память сервера Размер буферного пула Менее 1 ГБ 128 МБ (значение по умолчанию) От 1 ГБ до 4 ГБ detected server memory* 0,5Более 4 ГБ detected server memory* 0,75
-
Емкость журнала редо вычисляется в соответствии с количеством логических процессоров, доступных на сервере. Формула: (количество доступных логических процессоров / 2) ГБ, с максимальным динамическим значением по умолчанию 16 ГБ.
-
innodb_log_file_size(устарело)Размер файла журнала устанавливается в соответствии с автоматически настроенным размером буферного пула, как показано в следующей таблице:
Таблица 17.9 Автоматически настроенный размер файла журнала
Таблица 17.9 Автоматически настроенный размер файла журнала Размер буферного пула Размер файла журнала Менее 8 ГБ 512 МБ От 8 ГБ до 128 ГБ 1024 МБ Более 128 ГБ 2048 МБ
-
innodb_log_files_in_group(устарело)Количество файлов журнала определяется в соответствии с автоматически настроенным размером буферного пула, как показано в следующей таблице:
Таблица 17.10 Автоматически настроенное количество файлов журнала
Таблица 17.10 Автоматически настроенное количество файлов журнала Размер буферного пула Количество файлов журнала Менее 8 ГБ округл( buffer pool size)От 8 ГБ до 128 ГБ округл( buffer pool size* 0,75)Более 128 ГБ 64 ПримечаниеМинимальное значение для
innodb_log_files_in_groupравно2; это нижнее ограничение применяется, если округленное значение размера буферного пула меньше этого числа.
Если одна из перечисленных переменных явно установлена в файле параметров или где-либо ещё, используется это явное значение, и в stderr выводится предупреждение о запуске, подобное этому:
[Предупреждение] [000000] InnoDB: Параметр innodb_dedicated_server игнорируется для innodb_buffer_pool_size, потому что innodb_buffer_pool_size=134217728 указан явно.
Явное задание одной переменной не предотвращает автоматической настройки других параметров.
Если сервер запущен с --innodb-dedicated-server и innodb_buffer_pool_size задано явно, настройки переменных, основанные на размере буферного пула, используют значение, рассчитанное в соответствии с объемом обнаруженной на сервере памяти, а не явное значение размера буферного пула.
Автоматические настройки применяются --innodb-dedicated-server только при запуске сервера MySQL. Если позже вы явно зададите любую из затронутых переменных, это переопределит её предопределённое значение, и применится установленное вами значение. Установка одной из этих переменных в DEFAULT приводит к её установке в фактическое значение по умолчанию, как показано в описании переменной в руководстве, и не приводит к возвращению к значению, установленному --innodb-dedicated-server. Соответствующая системная переменная innodb_dedicated_server изменяется только при запуске сервера с --innodb-dedicated-server (или с --innodb-dedicated-server=ON или --innodb-dedicated-server=OFF); в противном случае она является только для чтения.
© 2025 Oracle
Licensed under the GPLv2 License.