Переменные системы InnoDB
На этой странице документированы системные переменные, относящиеся к хранилищу данных InnoDB. Для параметров, которые не являются системными переменными, см. Параметры InnoDB.
Полный список системных переменных и инструкции по их настройке см. на странице Переменные сервера.
Также см. Полный список параметров MariaDB, системных и статусных переменных.
have_innodb
-
Описание: Если сервер поддерживает таблицы InnoDB, будет установлено значение
YES, в противном случаеNO. Удалено в MariaDB 10.0, используйте вместо этого таблицу Information Schema PLUGINS или SHOW ENGINES. - Область действия: Глобальная
- Динамическая: Нет
- Удалено: MariaDB 10.0
ignore_builtin_innodb
-
Описание: Установка этого параметра в значение
1приводит к игнорированию встроенного хранилища данных InnoDB. В некоторых версиях MariaDB, XtraDB является по умолчанию и всегда присутствует, поэтому эта переменная игнорируется, а её установка приводит к предупреждению. С MariaDB 10.0.1 по MariaDB 10.0.8, когда InnoDB был по умолчанию вместо XtraDB, эта переменная должна была быть установлена. Обычно используется в сочетании с параметром plugin-load=innodb=ha_innodb для использования плагина InnoDB. -
Командная строка:
--ignore-builtin-innodb - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_adaptive_checkpoint
-
Описание: Заменено на innodb_adaptive_flushing_method. Управляет адаптивным контрольно-пропускным пунктом. Нечёткое создание контрольно-пропускных пунктов InnoDB может привести к остановкам, так как сразу сбрасывается много грязных блоков, когда возраст контрольного пункта приближается к максимальному. Адаптивное создание контрольно-пропускных пунктов направлено на более равномерную запись, примерно
modified age / maximum checkpoint age. Может привести к увеличению файлов журнала транзакций-
reflexАналогично сбрасыванию по innodb_max_dirty_pages_pct, но сбрасывает блоки постоянно и непрерывно, основываясь на самом старом изменённом возрасте. Если возраст превышает 1/2 максимальной ёмкости, запись будет слабой и непрерывной. Если возраст превышает 3/4, запись будет сильной. Силу можно настроить переменной innodb_io_capacity. -
estimateЗначение по умолчанию и независимо от innodb_io_capacity. Если самый старый изменённый возраст превысит 1/2 максимальной ёмкости, блоки будут сбрасываться каждую секунду со скоростью, определяемой количеством изменённых блоков, скоростью прогресса LSN и средним возрастом всех изменённых блоков. -
keep_averageПытается поддерживать постоянную скорость ввода/вывода, используя цикл с меньшим временем в одну десятую секунды. Разработан для SSD-накопителей.
-
-
Командная строка:
--innodb-adaptive-checkpoint=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
string -
Значение по умолчанию:
estimate -
Допустимые значения:
noneили0,reflexили1,estimateили2,keep_averageили3 - Удалено: XtraDB 5.5 - заменено на innodb_adaptive_flushing_method
innodb_adaptive_flushing
-
Описание: Если установлено в
1, значение по умолчанию, сервер динамически будет корректировать скорость записи грязных страниц в кэш-памяти InnoDB. Это помогает уменьшить кратковременные всплески активности ввода/вывода. Если установлено в0, адаптивное сброс будет выполняться только при достижении предела, указанного в innodb_adaptive_flushing_lwm. -
Командная строка:
--innodb-adaptive-flushing={0|1} - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_adaptive_flushing_lwm
- Описание: Адаптивный сброс включён, когда достигается этот нижний порог процентного значения ёмкости журнала InnoDB. Действует даже если innodb_adaptive_flushing отключён.
-
Командная строка:
--innodb-adaptive-flushing-lwm=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
double -
Значение по умолчанию:
10.000000 -
Диапазон:
0до70
innodb_adaptive_flushing_method
-
Описание: Определяет метод сброса грязных блоков из кэш-памяти буфера InnoDB. Если установлено в
nativeили0, используется оригинальный метод InnoDB. Максимальный возраст контрольно-пропускного пункта определяется общей длиной всех файлов журнала транзакций. Когда возраст контрольно-пропускного пункта достигает максимального значения, блоки сбрасываются. Это может привести к задержкам, если много обновлений в секунду и много блоков с почти одинаковым возрастом требуют сброса. Если установлено вestimateили1, значение по умолчанию, сравнивается самый старый изменённый возраст с максимальной ёмкостью. Если он больше чем 1/4 этой ёмкости, блоки сбрасываются каждую секунду. Количество сбрасываемых блоков определяется числом изменённых блоков, скоростью продвижения LSN и средним возрастом всех изменённых блоков. Поэтому она независима от innodb_io_capacity для цикла в 1 секунду, но не полностью для цикла в 10 секунд. Если установлено вkeep_averageили2, специально разработанных для SSD-накопителей, используется более короткий цикл для попытки поддержания постоянной скорости ввода/вывода. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено методом сброса InnoDB из MySQL 5.6. -
Командная строка:
innodb-adaptive-flushing-method=value - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
estimate -
Допустимые значения:
nativeили0,estimateили1,keep_averageили2 - Удалено: MariaDB 10.0 - заменено методом сброса InnoDB из MySQL 5.6
innodb_adaptive_hash_index
-
Описание: Если установлено в
1, значение по умолчанию до MariaDB 10.5, индекс хэша InnoDB включён. На основе тестирования производительности (MDEV-17492), адаптивный индекс хэша InnoDB улучшает производительность в основном при чтении, но может снижать производительность в других сценариях, особенно при операциях DROP TABLE, TRUNCATE TABLE, ALTER TABLE или DROP INDEX. -
Командная строка:
--innodb-adaptive-hash-index={0|1} - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF(>= MariaDB 10.5),ON(<= MariaDB 10.4)
innodb_adaptive_hash_index_partitions
-
Описание: Указывает количество разделов для использования в адаптивном поиске. Если установлено в
1, дополнительные разделы не создаются. Только XtraDB. С MariaDB 10.2.6 (InnoDB по умолчанию вместо XtraDB) это псевдоним для innodb_adaptive_hash_index_parts для упрощения обновлений. -
Командная строка:
innodb-adaptive-hash-index-partitions=# - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
1до64
innodb_adaptive_hash_index_parts
-
Описание: Указывает количество разделов для использования в адаптивном поиске. Если установлено в
1, дополнительные разделы не создаются. -
Командная строка:
innodb-adaptive-hash-index-parts=# - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
8 -
Диапазон:
1до512
innodb_adaptive_max_sleep_delay
-
Описание: Максимальное время в микросекундах для автоматической регулировки значения innodb_thread_sleep_delay в зависимости от рабочей нагрузки. Полезно в чрезвычайно загруженных системах с сотнями тысяч одновременных подключений.
0отключает любое ограничение. Устарело и игнорируется начиная с MariaDB 10.5.5. -
Командная строка:
--innodb-adaptive-max-sleep-delay=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
0(>= MariaDB 10.5.5) -
150000(<= MariaDB 10.5.4)
-
-
Диапазон:
0до1000000 - Введено: MariaDB 10.0
- Устарело: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_additional_mem_pool_size
- Описание: Размер в байтах пула памяти InnoDB, используемого для хранения информации о внутренних структурах данных. По умолчанию 8 МБ, если ваше приложение имеет много таблиц и большую структуру, и этот размер превышен, будет выделена память операционной системы и предупреждающие сообщения будут записаны в лог ошибок, в этом случае следует увеличить это значение. Устарело в MariaDB 10.0 и удалено в MariaDB 10.2 вместе с внутренним выделением памяти InnoDB.
-
Командная строка:
--innodb-additional-mem-pool-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
8388608 -
Диапазон:
2097152до4294967295 - Устарело: MariaDB 10.0
- Удалено: MariaDB 10.2.2
innodb_api_bk_commit_interval
- Описание: Время в секундах между автоматическими фиксациями для неактивных соединений, использующих интерфейс InnoDB memcached (не реализовано в MariaDB).
-
Командная строка:
--innodb-api-bk-commit-interval=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
5 -
Диапазон:
1до1073741824 - Введено: MariaDB 10.0
- Удалено: MariaDB 10.2.4
innodb_api_disable_rowlock
- Описание: Для использования с MySQL memcached (не реализовано в MariaDB)
-
Командная строка:
--innodb-api-disable-rowlock={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
- Удалено: MariaDB 10.2.4
innodb_api_enable_binlog
- Описание: Для использования с MySQL memcached (не реализовано в MariaDB)
-
Командная строка:
--innodb-api-enable-binlog={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
- Удалено: MariaDB 10.2.4
innodb_api_enable_mdl
- Описание: Для использования с MySQL memcached (не реализовано в MariaDB)
-
Командная строка:
--innodb-api-enable-mdl={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
- Удалено: MariaDB 10.2.4
innodb_api_trx_level
- Описание: Для использования с MySQL memcached (не реализовано в MariaDB)
-
Командная строка:
--innodb-api-trx-level=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 - Введено: MariaDB 10.0
- Удалено: MariaDB 10.2.4
innodb_auto_lru_dump
- Описание: Переименован innodb_buffer_pool_restore_at_startup начиная с XtraDB 5.5.10-20.1, который в свою очередь был заменен innodb_buffer_pool_load_at_startup в MariaDB 10.0.
-
Командная строка:
--innodb-auto-lru-dump=# - Удалено: XtraDB 5.5.10-20.1
innodb_autoextend_increment
-
Описание: Размер в МБ для увеличения файла табличного пространства с автоматическим расширением, когда он заполняется. Если innodb_file_per_table был установлен в
1, это значение не применяется к результирующим файлам табличного пространства на каждую таблицу, которые автоматически расширяются своим собственным способом. -
Командная строка:
--innodb-autoextend-increment=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
64(начиная с MariaDB 10.0)8(до MariaDB 10.0), -
Диапазон:
1до1000
innodb_autoinc_lock_mode
-
Описание: Режим блокировки, используемый при генерации значений
AUTO_INCREMENTдля таблиц InnoDB.- Допустимые значения:
-
0- традиционный режим блокировки. -
1- последовательный режим блокировки. -
2- чередующийся режим блокировки.
-
- Для использования Galera Cluster режим блокировки должен быть установлен в
2. - См. AUTO_INCREMENT Handling in InnoDB: AUTO_INCREMENT Lock Modes для получения дополнительной информации.
- Допустимые значения:
-
Командная строка:
--innodb-autoinc-lock-mode=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до2
innodb_background_scrub_data_check_interval
- Описание: Проверить, нужно ли очищать пространства каждые innodb_background_scrub_data_check_interval секунд. См. Data Scrubbing. Устарело и игнорируется начиная с MariaDB 10.5.2.
-
Командная строка:
--innodb-background-scrub-data-check-interval=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
3600 -
Диапазон:
1до4294967295 - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_background_scrub_data_compressed
- Описание: Включить очистку сжатых данных фоновыми потоками (так же, как encryption_threads). См. Data Scrubbing. Устарело и игнорируется начиная с MariaDB 10.5.2.
-
Командная строка:
--innodb-background-scrub-data-compressed={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
0 - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_background_scrub_data_interval
- Описание: Очистка пробелов, очищенных более чем за это количество секунд. См. Очистка данных. Устарело и игнорируется начиная с MariaDB 10.5.2.
-
Командная строка:
--innodb-background-scrub-data-interval=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
604800 -
Диапазон:
1до4294967295 - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_background_scrub_data_uncompressed
- Описание: Включение очистки нескомпрессированных данных фоновыми потоками (аналогично encryption_threads). См. Очистка данных. Устарело и игнорируется начиная с MariaDB 10.5.2.
-
Командная строка:
--innodb-background-scrub-data-uncompressed={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
0 - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_blocking_buffer_pool_restore
-
Описание: Если установлено в
1(0по умолчанию), XtraDB будет ожидать, пока дамп с наименьшим временем использования (LRU) будет полностью восстановлен при перезапуске, прежде чем сообщить серверу об успешном запуске. Доступно только с XtraDB, а не с InnoDB. -
Командная строка:
innodb-blocking-buffer-pool-restore={0|1} - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.0.0
innodb_buf_dump_status_frequency
-
Описание: Определяет, как часто (в процентах) статус дампа буфера пула должен выводиться в логах. Например,
10означает, что статус дампа буфера пула выводится, когда каждые 10% страниц буфера пула будут сброшены. По умолчанию0(выводится только начальный и конечный статус). -
Командная строка:
--innodb-buf-dump-status-frequency=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до100
innodb_buffer_pool_chunk_size
- Описание: Размер блока, используемый для динамического изменения размера буфера пула. Обратите внимание, что изменение этого параметра может изменить размер буфера пула. При использовании больших страниц это значение эффективно округляется до ближайшего кратного размеру большой страницы. См. Установка размера буфера пула InnoDB динамически. Начиная с MariaDB 10.8.0, переменная автоматически подбирается в зависимости от размера буфера пула.
-
Командная строка:
--innodb-buffer-pool-chunk-size=# - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
-
autosize (0), что приводит к innodb_buffer_pool_size/64, если large_pages округляет вниз до кратного наибольшего размера страницы, с минимальным значением 1 МБ (>= MariaDB 10.8.1) -
134217728(<= MariaDB 10.8.0)
-
-
Диапазон:
-
0, как автоматическое значение, а затем1048576до18446744073709551615(>= MariaDB 10.8) -
1048576до innodb_buffer_pool_size/innodb_buffer_pool_instances (<= MariaDB 10.7)
-
innodb_buffer_pool_dump_at_shutdown
- Описание: Запись страниц, кэшированных в буфере пула при выключении сервера, что сокращает время разогрева при следующем запуске сервера. Соответствующая переменная innodb_buffer_pool_load_at_startup определяет, загружается ли буфер пула автоматически при запуске.
-
Командная строка:
--innodb-buffer-pool-dump-at-shutdown={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
-
ON
-
innodb_buffer_pool_dump_now
- Описание: Немедленная запись страниц, хранящихся в буфере пула. Соответствующая переменная innodb_buffer_pool_load_now выполняет обратное действие и немедленно загрузит буфер пула.
-
Командная строка:
--innodb-buffer-pool-dump-now={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
innodb_buffer_pool_dump_pct
- Описание: Сброс только самых активных N% каждого буфера пула.
-
Командная строка:
--innodb-buffer-pool-dump-pct={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
-
25
-
-
Диапазон:
1до100
innodb_buffer_pool_evict
- Описание: Вытеснение страниц из буфера пула. Если установлено "uncompressed", то все нескомпрессированные страницы будут вытеснены из буфера пула. Переменная используется только для тестирования. Существует только в сборках DEBUG.
-
Командная строка:
--innodb-buffer-pool-evict=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
string -
Значение по умолчанию:
"" - Допустимые значения: "" или "uncompressed"
innodb_buffer_pool_filename
- Описание: Файл, содержащий список номеров страниц буфера пула, установленный переменными innodb_buffer_pool_dump_at_shutdown и innodb_buffer_pool_dump_now.
-
Командная строка:
--innodb-buffer-pool-filename=file - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
string -
Значение по умолчанию:
ib_buffer_pool - Введено: MariaDB 10.0
innodb_buffer_pool_instances
- Описание: Если innodb_buffer_pool_size установлено более 1 ГБ, innodb_buffer_pool_instances делит буфер пула InnoDB на такое количество экземпляров. По умолчанию было 1 в MariaDB 5.5, но для больших систем с буферами пула в несколько гигабайт, множество экземпляров может помочь уменьшить конкуренцию за одновременный доступ. По умолчанию 8 в MariaDB 10 (кроме Windows 32-бит, где зависит от innodb_buffer_pool_size, или начиная с MariaDB 10.2.2, где устанавливается в 1, если innodb_buffer_pool_size < 1 ГБ). Каждый экземпляр управляет своими собственными структурами данных и занимает равную часть общего размера буфера пула, например, если innodb_buffer_pool_size 4 ГБ, а innodb_buffer_pool_instances 4, каждый экземпляр будет 1 ГБ. Каждый экземпляр желательно иметь размер не менее 1 ГБ. Устарело и игнорируется начиная с MariaDB 10.5.1, так как первоначальные причины разделения буфера пула в основном исчезли.
-
Командная строка:
--innodb-buffer-pool-instances=# - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию: >= MariaDB 10.0.4:
8,1(>= MariaDB 10.2.2, если innodb_buffer_pool_size < 1 ГБ), или зависит от innodb_buffer_pool_size (Windows 32-бит) - Устарело: MariaDB 10.5.1
- Удалено: MariaDB 10.6.0
innodb_buffer_pool_load_abort
- Описание: Прерывает процесс восстановления содержимого буфера пула буфера пула, начатый параметрами innodb_buffer_pool_load_at_startup или innodb_buffer_pool_load_now.
-
Командная строка:
--innodb-buffer-pool-load-abort={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_buffer_pool_load_at_startup
- Описание: Указывает, загружается ли буфер пула автоматически при запуске сервера путем загрузки ранее сохранённых страниц. Соответствующий параметр innodb_buffer_pool_dump_at_shutdown определяет, сохраняются ли страницы при выключении. Если буфер пула большой и его загрузка занимает много времени, увеличение параметра innodb_io_capacity при запуске может помочь.
-
Командная строка:
--innodb-buffer-pool-load-at-startup={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
-
ON
-
innodb_buffer_pool_load_now
- Описание: Немедленно нагревает буфер пула, загружая сохранённые страницы данных. Соответствующий параметр innodb_buffer_pool_dump_now делает обратное, и немедленно записывает страницы, хранящиеся в буфере пула.
-
Командная строка:
--innodb-buffer-pool-load-now={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
innodb_buffer_pool_load_pages_abort
- Описание: Количество страниц во время загрузки буфера пула для обработки перед подачей сигнала innodb_buffer_pool_load_abort=1. Только для отладочных сборок.
-
Командная строка:
--innodb-buffer-pool-load-pages-abort=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
9223372036854775807 -
Диапазон:
1до9223372036854775807 - Введено: MariaDB 10.3
innodb_buffer_pool_populate
-
Описание: При значении
1(0по умолчанию), XtraDB предварительно выделяет страницы в буфере пула при запуске, чтобы решения о распределении NUMA принимались, пока кэш буфера ещё пустой. Только XtraDB. Этот параметр был сделан неэффективным в MariaDB 10.0.23. Добавлен в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB) для упрощения обновлений. -
Командная строка:
innodb-buffer-pool-populate={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревший: MariaDB 10.0.23
- Удалено: MariaDB 10.3.0
innodb_buffer_pool_restore_at_startup
-
Описание: Время в секундах между автоматическими резервными копиями буфера пула. Если установлено ненулевое значение, XtraDB также выполнит автоматическое восстановление буфера пула при запуске. Если установлено значение
0, автоматические резервные копии не выполняются, ни автоматическое восстановление при запуске. Заменено на innodb_buffer_pool_load_at_startup в MariaDB 10.0. -
Командная строка:
innodb-buffer-pool-restore-at-startup - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон (32 бита):
0до4294967295 -
Диапазон (64 бита):
0до18446744073709547520 - Удалено: MariaDB 10.0 - заменено на innodb_buffer_pool_load_at_startup
innodb_buffer_pool_shm_checksum
- Описание: Используется с патчем Percona's SHM буфера пула в XtraDB 5.5. Вскоре был помечен как устаревший и удален в XtraDB 5.6. Только XtraDB.
-
Командная строка:
innodb-buffer-pool-shm-checksum={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Удалено: MariaDB 10.0
innodb_buffer_pool_shm_key
- Описание: Используется с патчем Percona's SHM буфера пула в XtraDB 5.5. Позже помечен как устаревший в XtraDB 5.5 и удален в XtraDB 5.6.
-
Командная строка:
innodb-buffer-pool-shm-key={0|1} - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
0 - Удалено: MariaDB 10.0
innodb_buffer_pool_size
- Описание: Размер буфера пула InnoDB в байтах. Основное значение для настройки на сервере базы данных с исключительно/преимущественно таблицами InnoDB, может быть установлено до 80% от общей памяти в этих средах. См. InnoDB Buffer Pool для получения дополнительной информации по настройке этой переменной, а также Настройка размера InnoDB Buffer Pool динамически, если это делается динамически.
-
Командная строка:
--innodb-buffer-pool-size=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
134217728(128iМБ) -
Диапазон:
- Минимум:
5242880(5МБ) для размера страницы InnoDB <= 16k, иначе25165824(24МБ) для размера страницы InnoDB > 16k (для версий ниже следующей строки) - Минимальное значение:
2MiBInnoDB Размер страницы = 4k,3MiBInnoDB Размер страницы = 8k,5MiBInnoDB Размер страницы = 16k,10MiBInnoDB Размер страницы = 32k,20MiBInnoDB Размер страницы = 64k, (>= MariaDB 10.2.42, >= MariaDB 10.3.33, >= MariaDB 10.4.23, >= MariaDB 10.5.14, >= MariaDB 10.6.6, >= MariaDB 10.7.2) - Минимум: 1ГБ для innodb_buffer_pool_instances > 1 (<= MariaDB 10.7)
- Максимум:
9223372036854775807(8192ПБ) (все версии)
- Минимум:
innodb_change_buffer_dump
- Описание: Если установлено, заставляет содержимое буфера изменений InnoDB быть выгруженным в журнал ошибок сервера при запуске. Доступно только в отладочных сборках.
- Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.2.28, MariaDB 10.3.19, MariaDB 10.4.9
innodb_change_buffer_max_size
- Описание: Максимальный размер буфера изменений InnoDB как процент от общего размера буфера пула. Значение по умолчанию 25%, и может быть увеличен до 50% для серверов с высокой активностью записи, и уменьшен до 0 для серверов, используемых исключительно для отчётов.
-
Командная строка:
--innodb-change-buffer-max-size=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
25 -
Диапазон:
0до50 - Введено: MariaDB 10.0
- Устаревший: MariaDB 10.9.0
- Удалено: MariaDB 11.0.0
innodb_change_buffering
- Описание: Устанавливает, как выполняется буферизация изменений InnoDB. Подробные сведения о настройках см. в разделе Буферизация изменений InnoDB. Устарело и игнорируется начиная с MariaDB 10.9.0.
-
Командная строка:
--innodb-change-buffering=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
enumeration(>= MariaDB 10.3.7),string(<= MariaDB 10.3.6) -
Значение по умолчанию:
- >= MariaDB 10.5.15, MariaDB 10.6.7, MariaDB 10.7.3, MariaDB 10.8.2:
none - <= MariaDB 10.5.14, MariaDB 10.6.6, MariaDB 10.7.2, MariaDB 10.8.1:
all
- >= MariaDB 10.5.15, MariaDB 10.6.7, MariaDB 10.7.3, MariaDB 10.8.2:
-
Допустимые значения:
inserts,none,deletes,purges,changes,all - Устарело: MariaDB 10.9.0
- Удалено: MariaDB 11.0.0
innodb_change_buffering_debug
-
Описание: Если установлено в
1, устанавливается флаг отладки буферизации изменений InnoDB.1принудительно выполняет все изменения в буфере изменений, а2вызывает сбой при слиянии.0, значение по умолчанию, означает, что флаг не установлен. Доступно только в отладочных сборках. -
Командная строка:
--innodb-change-buffering-debug=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до2
innodb_checkpoint_age_target
-
Описание: Максимальное значение возраста контрольной точки. Если установлено в
0, не оказывает никакого влияния. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено методом сброса InnoDB из MySQL 5.6. -
Командная строка:
innodb-checkpoint-age-target=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0и выше - Удалено: MariaDB 10.0 — заменено методом сброса InnoDB из MySQL 5.6.
innodb_checksum_algorithm
-
Описание: Указывает, как генерируется и проверяется контрольная сумма табличного пространства InnoDB.
-
innodb: Обратная совместимость с более ранними версиями (<= MariaDB 5.5). Устарело в MariaDB 10.3.29, MariaDB 10.4.19, MariaDB 10.5.10 и удалено в MariaDB 10.6. Если действительно необходимо, файлы данных всё ещё можно преобразовать с помощью innochecksum. -
crc32: Новый, более быстрый алгоритм, но несовместимый с более ранними версиями. Блоки табличного пространства со временем будут преобразованы в новый формат, что означает, что могут присутствовать смешанные контрольные суммы. -
full_crc32иstrict_full_crc32: Начиная с MariaDB 10.4.3. Разрешает поддержку шифрования через SPATIAL INDEX, чегоcrc32не поддерживает. Новые файлы данных будут содержать флаг, указывающий, что все страницы файла будут использовать полную контрольную сумму CRC-32C по всему содержимому страницы (исключая байты, где хранится контрольная сумма, в самом конце страницы). Такие файлы всегда будут использовать эту контрольную сумму, независимо от параметраinnodb_checksum_algorithm, который присвоен. Даже еслиinnodb_checksum_algorithmбудет изменён позже, та же контрольная сумма будет продолжать использоваться. Специальный флаг будет установлен в FSP_SPACE_FLAGS на первой странице данных, чтобы указать новый формат контрольной суммы и шифрования/сжатия страницы. Таблицы ROW_FORMAT=COMPRESSED будут использовать только старый формат. Эти таблицы не поддерживают новые функции, такие как больший innodb_page_size или мгновенное добавление/удаление столбцов. Также очищаются флаги табличного пространства MariaDB — флаги зарезервированы для хранения алгоритма сжатия page_compressed и для хранения длины сжатого полезного объёма, так что контрольную сумму можно вычислить по сжатому (и возможно зашифрованному) потоку и проверить её, не расшифровывая и не распаковывая страницу. В формате full_crc32 больше нет отдельных контрольных сумм для страниц до и после шифрования. Единственная контрольная сумма вычисляется для содержимого страницы, которое записывается в файл. Подробности см. в MDEV-12026. -
none: Записывает константу вместо вычисления контрольной суммы. Устарело в MariaDB 10.3.29, MariaDB 10.4.19, MariaDB 10.5.10 и удалено в MariaDB 10.6, так как в основном использовалось для отключения исходной медленной контрольной суммы страницы для целей бенчмаркинга. -
strict_crc32,strict_innodbиstrict_none: Параметры аналогичны обычным, но InnoDB прервётся, если встретит смешанные значения контрольных сумм. Они быстрее, так как не требуются как новые, так и старые значения контрольных сумм, но могут быть использованы только при первом создании табличных пространств.
-
-
Командная строка:
--innodb-checksum-algorithm=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
-
full_crc32(>= MariaDB 10.5.0) -
crc32(>= MariaDB 10.2.2 to <= MariaDB 10.4) -
innodb(<= MariaDB 10.2.1)
-
-
Допустимые значения:
- >= MariaDB 10.6.0:
crc32,full_crc32,strict_crc32,strict_full_crc32 -
MariaDB 10.5, >= MariaDB 10.4.3:
innodb,crc32,full_crc32,none,strict_innodb,strict_crc32,strict_none,strict_full_crc32 - <= MariaDB 10.4.2:
innodb,crc32,none,strict_innodb,strict_crc32,strict_none
- >= MariaDB 10.6.0:
innodb_checksums
-
Описание: По умолчанию, InnoDB выполняет проверку контрольной суммы всех страниц, считываемых с диска, что обеспечивает дополнительную отказоустойчивость. Обычно это значение должно быть установлено в
1в производственных средах, хотя установка в0может обеспечить незначительные улучшения производительности. Устарело и функциональность заменена на innodb_checksum_algorithm в MariaDB 10.0 и следует удалить, чтобы избежать конфликтов.ONэквивалентно--innodb_checksum_algorithm=innodb, аOFFэквивалентно--innodb_checksum_algorithm=none. -
Командная строка:
--innodb-checksums,--skip-innodb-checksums - Область: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устарело: MariaDB 10.0
- Удалено: MariaDB 10.5.0
innodb_cleaner_lsn_age_factor
-
Описание: XtraDB имеет усовершенствованные эвристики очистки страниц, и при их наличии адаптивное сброс InnoDB по умолчанию может быть слишком агрессивным. В результате была введена новая формула для фактора возраста LSN, управляемая этой переменной. Значение по умолчанию,
high_checkpoint, использует новую формулу, а альтернативное значениеlegacy, использует исходный алгоритм. Только XtraDB. Добавлено как устаревшая и игнорируемая опция в MariaDB 10.2.6 (которая использует InnoDB по умолчанию вместо XtraDB), чтобы облегчить обновления. -
Командная строка:
--innodb-cleaner-lsn-age-factor=value - Область: Глобальная
- Динамический: Да
-
Тип данных:
enum -
Значение по умолчанию:
-
deprecated
-
-
Допустимые значения:
-
deprecated,high_checkpoint,legacy
-
- Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_cmp_per_index_enabled
-
Описание: Если установлено в
ON(OFFпо умолчанию), статистика сжатия по индексу хранится в таблице INFORMATION_SCHEMA.INNODB_CMP_PER_INDEX. Эти данные дорого стоят, поэтому это значение следует изменять с осторожностью, например, для настройки производительности на серверах разработки или реплик. -
Командная строка:
--innodb-cmp-per-index-enabled={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.0
innodb_commit_concurrency
- Описание: Ограничение на количество потоков транзакций, которые могут одновременно завершать работу. 0 (значение по умолчанию) не накладывает ограничений. Хотя вы можете изменить значение с одного положительного предела на другой во время выполнения, вы не можете установить это значение в 0 или изменить его с 0 при запуске сервера. Устаревшее и игнорируемое начиная с MariaDB 10.5.5.
-
Командная строка:
--innodb-commit-concurrency=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до1000 - Устаревшее: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_compression_algorithm
-
Описание: Алгоритм сжатия, используемый для сжатия страниц InnoDB. Поддерживаемые значения:
-
none: Страницы не сжимаются. -
zlib: Страницы сжимаются с помощью встроенного алгоритма сжатияzlib. -
lz4: Страницы сжимаются с помощью алгоритма сжатияlz4. -
lzo: Страницы сжимаются с помощью алгоритма сжатияlzo. -
lzma: Страницы сжимаются с помощью алгоритма сжатияlzma. -
bzip2: Страницы сжимаются с помощью алгоритма сжатияbzip2. -
snappy: Страницы сжимаются с помощью алгоритмаsnappy. - Во многих дистрибутивах по умолчанию MariaDB может не поддерживать все алгоритмы сжатия страниц. Начиная с MariaDB 10.7, библиотеки могут устанавливаться как плагин. См. Плагины сжатия.
- См. Сжатие страниц InnoDB: Настройка алгоритма сжатия страниц InnoDB для получения дополнительной информации.
-
-
Командная строка:
--innodb-compression-algorithm=value - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enum -
Значение по умолчанию:
zlib -
Допустимые значения:
none,zlib,lz4,lzo,lzma,bzip2илиsnappy
innodb_compression_default
-
Описание: Включено ли по умолчанию сжатие страниц InnoDB для новых таблиц.
- Значение по умолчанию —
OFF, что означает, что новые таблицы не сжимаются. - См. Сжатие страниц InnoDB: Включение сжатия страниц InnoDB по умолчанию для получения дополнительной информации.
- Значение по умолчанию —
-
Командная строка:
--innodb-compression-default={0|1} - Область действия: Глобальная, сеанс
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_compression_failure_threshold_pct
-
Описание: Указывает процентное значение порогового значения для дорогостоящих ошибок сжатия при обновлении таблицы, использующей сжатие страниц InnoDB, после чего к каждой новой сжатой странице добавляется свободное место, динамически настраиваемое до уровня, установленного параметром innodb_compression_pad_pct_max. Ноль отключает проверку эффективности сжатия и настройку заполнения.
- См. Сжатие страниц InnoDB: Настройка порогового значения и заполнения для получения дополнительной информации.
-
Командная строка:
--innodb-compression-failure-threshold-pct=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
5 -
Диапазон:
0до100 - Введено: MariaDB 10.0
innodb_compression_level
-
Описание: Указывает уровень сжатия по умолчанию для таблиц, использующих сжатие страниц InnoDB.
- Только подмножество алгоритмов сжатия страниц InnoDB поддерживает уровни сжатия. Если алгоритм сжатия страниц InnoDB не поддерживает уровни сжатия, то значение уровня сжатия игнорируется.
- Уровень сжатия может быть установлен в любое значение от
1до9. Уровень сжатия по умолчанию —6. Диапазон идет от самого быстрого к самому компактному, что означает, что1— самое быстрое, а9— самое компактное. - См. Сжатие страниц InnoDB: Настройка уровня сжатия по умолчанию для получения дополнительной информации.
-
Командная строка:
--innodb-compression-level=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
6 -
Диапазон:
1до9 - Введено: MariaDB 10.0
innodb_compression_pad_pct_max
-
Описание: Максимальный процент зарезервированного свободного места в каждой сжатой странице для таблиц, использующих сжатие страниц InnoDB. Зарезервированное свободное место используется при реорганизации данных страницы и возможно повторном сжатии. Используется только тогда, когда innodb_compression_failure_threshold_pct не равен нулю, и скорость ошибок сжатия превышает его значение.
- См. Сжатие страниц InnoDB: Настройка порогового значения и заполнения для получения дополнительной информации.
-
Командная строка:
--innodb-compression-pad-pct-max=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
50 -
Диапазон:
0до75 - Введено: MariaDB 10.0
innodb_concurrency_tickets
- Описание: Количество раз, когда новый поток может войти и выйти из InnoDB, прежде чем он снова подпадает под ограничения innodb_thread_concurrency и, возможно, встанет в очередь. Устаревшее и игнорируемое начиная с MariaDB 10.5.5.
-
Командная строка:
--innodb-concurrency-tickets=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
0(>= MariaDB 10.5.5) -
5000(<= MariaDB 10.5.4)
-
-
Диапазон:
1до18446744073709551615 - Устаревшее: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_corrupt_table_action
-
Описание: Действие, которое необходимо выполнить при обнаружении повреждённой таблицы. Только XtraDB.
- При установке в значение
assert, по умолчанию, XtraDB преднамеренно завершит работу сервера при обнаружении повреждённых данных в табличном пространстве одной таблицы, с ошибкой проверки. - При установке в значение
warn, он пропустит повреждение как повреждённую таблицу вместо завершения работы и отключит все дальнейшие операции ввода-вывода (кроме удаления) для файла таблицы. - Если установлено значение
salvage, доступ для чтения разрешён, но повреждённые страницы игнорируются. innodb_file_per_table должен быть включён для этого параметра. Ранее называлсяinnodb_pass_corrupt_table. - Добавлен как устаревший и игнорируемый параметр в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB) для облегчения апгрейдов.
- При установке в значение
-
Командная строка:
innodb-corrupt-table-action=value - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
-
assert(<= MariaDB 10.1) -
deprecated(<= MariaDB 10.2.6)
-
-
Допустимые значения:
-
deprecated,assert,warn,salvage
-
- Устаревший: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_data_file_buffering
-
Описание: Включить кэширование файловой системы для файлов данных. Установлено в
OFFпо умолчанию, будет установлено вONесли innodb_flush_method установлено вfsync,littlesync,nosync, или (для Windows)normal. -
Командная строка:
--innodb-data-file-buffering={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 11.0.0
innodb_data_file_path
- Описание: Индивидуальные файлы данных InnoDB, пути и размеры. Значение innodb_data_home_dir объединяется с каждым путём, указанным в innodb_data_file_path, чтобы получить полный путь к каталогу. Если innodb_data_home_dir пустая строка, здесь можно указать абсолютные пути. Размер файла указывается с K для килобайт, M для мегабайт и G для гигабайт, а также указывается, нужно ли автоматически расширять файл данных.
-
Командная строка:
--innodb-data-file-path=name - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
ibdata1:12M:autoextend(с MariaDB 10.0),ibdata1:10M:autoextend(до MariaDB 10.0)
innodb_data_file_write_through
-
Описание: Производятся ли записи в файлы данных InnoDB (включая временное табличное пространство) через кэш. Установлено в
OFFпо умолчанию, будет установлено вONесли innodb_flush_method установлено вO_DSYNC. На системах, поддерживающих FUA, включение записи через кэш может быть целесообразным, чтобы избежать дополнительных системных вызовов. -
Командная строка:
--innodb-data-file-write-through={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 11.0.0
innodb_data_home_dir
- Описание: Путь к каталогу для всех файлов данных InnoDB в общем табличном пространстве (если innodb_file_per_table не включён). Информацию о файлах можно добавить в innodb_data_file_path, а также указать абсолютные пути, если innodb_data_home_dir пустая строка.
-
Командная строка:
--innodb-data-home-dir=path - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
directory name -
Значение по умолчанию:
The MariaDB data directory
innodb_deadlock_detect
- Описание: По умолчанию, детектор тупиковых ситуаций InnoDB включен. Если установить значение OFF, детектирование тупиковых ситуаций отключено, и MariaDB будет полагаться на innodb_lock_wait_timeout. Это может быть более эффективным на системах с высокой конкурентностью, так как детектирование тупиковых ситуаций может стать узким местом, когда много потоков ожидают одного и того же замка.
-
Командная строка:
--innodb-deadlock-detect - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
1
innodb_deadlock_report
-
Описание: Способ отчёта о тупиковых ситуациях (если innodb_deadlock_detect=ON).
-
off: Не отображать никакие подробности тупиковых ситуаций. -
basic: Отобразить транзакции и ожидающие блокировки. -
full: По умолчанию. Отобразить транзакции, ожидающие блокировки и блокирующие блокировки.
-
-
Командная строка:
--innodb-deadlock-report=val - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
enum -
Значение по умолчанию:
full -
Допустимые значения:
off,basic,full - Введено: MariaDB 10.6.0
innodb_default_page_encryption_key
-
Описание: Ключ шифрования, используемый для шифрования страницы.
- См. Шифрование данных в состоянии покоя и Ключи шифрования InnoDB для получения дополнительной информации.
-
Командная строка:
--innodb-default-page-encryption-key=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
1до255 - Введено: MariaDB 10.1.3
- Удалено: MariaDB 10.1.4
innodb_default_encryption_key_id
-
Описание: Идентификатор ключа шифрования, используемого по умолчанию для шифрования табличных пространств InnoDB.
- См. Шифрование данных в состоянии покоя и Ключи шифрования InnoDB для получения дополнительной информации.
-
Командная строка:
--innodb-default-encryption-key-id=# - Область действия: Глобальная, Сеанс
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
1до4294967295
innodb_default_row_format
-
Описание: Указывает формат строк по умолчанию, который будет использоваться для таблиц InnoDB. Сжатый формат строк не может быть установлен по умолчанию.
- См. Обзор форматов строк InnoDB: Формат строк по умолчанию для получения дополнительной информации.
-
Командная строка:
--innodb-default-row-format=value - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
enum -
Значение по умолчанию:
dynamic -
Допустимые значения:
redundant,compactилиdynamic
innodb_defragment
-
Описание: При установке в
1(по умолчанию0), фрагментация InnoDB включена. При установке в FALSE, вся существующая фрагментация приостанавливается, а новые команды фрагментации завершатся ошибкой. Приостановленные команды фрагментации возобновятся, когда эта переменная снова будет установлена в TRUE. См. Фрагментация табличных пространств InnoDB. -
Командная строка:
--innodb-defragment={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_defragment_fill_factor
- Описание: Указывает, насколько полное дефрагментация должна заполнить страницу. Вместе с innodb_defragment_fill_factor_n_recs гарантирует, что дефрагментация не заполнит страницу слишком сильно и не вызовет разделение страницы при следующем вставке на каждой странице. Переменная, указывающая на больший выигрыш от дефрагментации, является эффективной. См. Дефрагментация табличных пространств InnoDB.
-
Командная строка:
--innodb-defragment-fill-factor=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
double -
Значение по умолчанию:
0.9 -
Диапазон:
0.7до1 - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_defragment_fill_factor_n_recs
- Описание: Количество записей пространства, которое дефрагментация должна оставить на странице. Эта переменная, вместе с innodb_defragment_fill_factor, вводится, чтобы дефрагментация не заполняла страницу слишком сильно и не вызывала разделения страницы при следующем вставке на каждой странице. Переменная, указывающая на больший выигрыш от дефрагментации, является эффективной. См. Дефрагментация табличных пространств InnoDB.
-
Командная строка:
--innodb-defragment-fill-factor-n-recs=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
20 -
Диапазон:
1до100 - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_defragment_frequency
- Описание: Максимальное количество раз в секунду для дефрагментации одного индекса. Это контролирует количество раз, когда поток дефрагментации может запросить X_LOCK для индекса. Поток дефрагментации проверит, прошло ли 1/defragment_frequency (с) с момента последней работы с этим индексом, и вернёт индекс обратно в очередь, если не прошло достаточно времени. Фактическая частота может быть только меньше этого заданного числа. См. Дефрагментация табличных пространств InnoDB.
-
Командная строка:
--innodb-defragment-frequency=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
integer -
Значение по умолчанию:
40 -
Диапазон:
1до1000 - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_defragment_n_pages
- Описание: Количество страниц, рассматриваемых одновременно при слиянии нескольких страниц для дефрагментации. См. Дефрагментация табличных пространств InnoDB.
-
Командная строка:
--innodb-defragment-n-pages=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
7 -
Диапазон:
2до32 - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_defragment_stats_accuracy
- Описание: Количество изменений статистики дефрагментации, которые происходят перед записью статистики в постоянное хранилище. По умолчанию равно нулю, что означает отключение отслеживания статистики дефрагментации. См. Дефрагментация табличных пространств InnoDB.
-
Командная строка:
--innodb-defragment-stats-accuracy=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до4294967295 - Устаревший: MariaDB 11.0.1
- Удалено: MariaDB 11.1.0
innodb_dict_size_limit
-
Описание: Размер в байтах мягкого ограничения памяти, используемой таблицами в словаре данных. После достижения этого предела XtraDB попытается удалить неиспользуемые записи. Если установлено значение
0, значение по умолчанию и стандартное поведение InnoDB, ограничений на использование памяти нет. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено новой реализацией table_definition_cache MySQL 5.6. -
Командная строка:
innodb-dict-size-limit=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Значение по умолчанию - 32 бита:
2147483648 -
Значение по умолчанию - 64 бита:
9223372036854775807 - Удалено: MariaDB 10.0 - заменено реализацией table_definition_cache MySQL 5.6.
innodb_disable_sort_file_cache
-
Описание: Если установлено значение
1(0- значение по умолчанию), кэш файловой системы операционной системы для временных файлов сортировки по слиянию отключается. -
Командная строка:
--innodb-disable-sort-file-cache={0|1} - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_disallow_writes
- Описание: Указать InnoDB остановить любые записи на диск.
- Командная строка: Нет
- Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.3.35, MariaDB 10.4.25, MariaDB 10.5.16, MariaDB 10.6.8, MariaDB 10.7.4
innodb_doublewrite
-
Описание: Если установлено значение
1, значение по умолчанию, для повышения отказоустойчивости InnoDB сначала сохраняет данные в буфер doublewrite, прежде чем записать их в файл данных. Отключение обеспечит незначительное улучшение производительности. -
Командная строка:
--innodb-doublewrite,--skip-innodb-doublewrite - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_doublewrite_file
- Описание: Абсолютный или относительный путь и имя файла до выделенного табличного пространства для буфера doublewrite. При больших нагрузках буфер doublewrite может сильно влиять на сервер, и перемещение его на другой диск уменьшит конкуренцию при случайных чтениях. Поскольку буфер doublewrite в основном выполняет последовательные записи, традиционный жёсткий диск является лучшим выбором, чем SSD. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6.
-
Командная строка:
innodb-doublewrite-file=filename - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
filename -
Значение по умолчанию:
NULL - Удалено: MariaDB 10.0
innodb_empty_free_list_algorithm
-
Описание: XtraDB 5.6.13-61 ввёл алгоритм, помогающий снизить конкуренцию за мьютексы, когда список свободных блоков буфера пуст, управляемый данной переменной. Если установлено значение
backoff, по умолчанию до MariaDB 10.1.24, будет использоваться новый алгоритм. Если установлено значениеlegacy, будет использоваться исходный алгоритм InnoDB. Только XtraDB. Добавлено как устаревшая и игнорируемая опция в MariaDB 10.2.6 (в котором InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления. См. #1651657 для причин, по которым это было изменено обратно наlegacyв XtraDB 5.6.36-82.0. При обновлении с 10.0 до 10.1 (≥ 10.1.24), для больших буферных пулов значение по умолчанию останетсяbackoff, в то время как для малых будет изменено наlegacy. -
Командная строка:
innodb-empty-free-list-algorithm=value - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enum -
Значение по умолчанию:
-
deprecated
-
-
Допустимые значения:
-
deprecated,backoff,legacy
-
- Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_enable_unsafe_group_commit
-
Описание: Не нужно после XtraDB 1.0.5. Если установлено значение
0, по умолчанию, InnoDB будет сохранять транзакции между журналом транзакций и файлами журналов бинарных логов в том же порядке. Более безопасно, но медленнее. Если установлено значение1, транзакции могут быть объединены в группы, но нет гарантии сохранения порядка, и существует небольшой риск рассогласования двух журналов. В средах с интенсивными операциями записи может привести к существенному улучшению производительности. -
Командная строка:
--innodb-enable-unsafe-group-commit - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до1 - Удалено: Не нужно после XtraDB 1.0.5
innodb_encrypt_log
-
Описание: Включает шифрование журнала пересоздания InnoDB. Это также включает шифрование некоторых временных файлов, создаваемых внутри InnoDB, таких как те, которые используются для слияния и журналов строк.
- См. Шифрование данных в состоянии покоя и InnoDB/XtraDB Включение шифрования: Включение шифрования для журнала пересоздания для получения дополнительной информации.
-
Командная строка:
--innodb-encrypt-log - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_encrypt_tables
-
Описание: Включает автоматическое шифрование всех табличных пространств InnoDB.
-
OFF- Отключает шифрование таблиц для всех новых и существующих таблиц, у которых опция таблицыENCRYPTEDустановлена вDEFAULT. -
ON- Включает шифрование таблиц для всех новых и существующих таблиц, у которых опция таблицыENCRYPTEDустановлена вDEFAULT, но позволяет создавать нешифрованные таблицы. -
FORCE- Включает шифрование таблиц для всех новых и существующих таблиц, у которых опция таблицыENCRYPTEDустановлена вDEFAULT, и не позволяет создавать нешифрованные таблицы (CREATE TABLE ... ENCRYPTED=NO приведет к ошибке). - См. Шифрование данных в состоянии покоя и InnoDB / XtraDB Включение шифрования: Включение шифрования для автоматически шифруемых табличных пространств для получения дополнительной информации.
-
-
Командная строка:
--innodb-encrypt-tables={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF -
Допустимые значения:
ON,OFF,FORCE
innodb_encrypt_temporary_tables
-
Описание: Включает автоматическое шифрование временного табличного пространства InnoDB.
- См. Шифрование данных в состоянии покоя и InnoDB Включение шифрования: Включение шифрования для временных табличных пространств для получения дополнительной информации.
-
Командная строка:
--innodb-encrypt-temporary-tables={0|1} - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF -
Допустимые значения:
ON,OFF - Введено: MariaDB 10.2.26, MariaDB 10.3.17, MariaDB 10.4.7
innodb_encryption_rotate_key_age
-
Описание: Перешифровать в фоновом режиме все страницы, у которых ключ старше этого количества версий ключей. При настройке шифрования эта переменная должна быть установлена на ненулевое значение. В противном случае при включении шифрования через
innodb_encrypt_tablesMariaDB не сможет автоматически зашифровать нешифрованные таблицы.- См. Шифрование данных в состоянии покоя и InnoDB/XtraDB Ключи шифрования: Ротация ключей для получения дополнительной информации.
-
Командная строка:
--innodb-encryption-rotate-key-age=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до4294967295
innodb_encryption_rotation_iops
-
Описание: Использовать такое количество iops для операций фоновой ротации ключей, выполняемых фоновыми потоками шифрования.
- См. Шифрование данных в состоянии покоя и InnoDB/XtraDB Ключи шифрования: Ротация ключей для получения дополнительной информации.
-
Командная строка:
--innodb-encryption-rotation_iops=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
100 -
Диапазон:
0до4294967295
innodb_encryption_threads
-
Описание: Количество фоновых потоков шифрования, выполняющих фоновую ротацию ключей и очистку. При настройке шифрования эта переменная должна быть установлена на ненулевое значение. В противном случае, при включении шифрования через innodb_encrypt_tables MariaDB не сможет автоматически шифровать нешифрованные таблицы. Рекомендуется никогда не устанавливать значение выше 255.
- См. Шифрование данных в состоянии покоя и Фоновые потоки шифрования InnoDB для получения дополнительной информации.
-
Командная строка:
--innodb-encryption-threads=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
-
0до4294967295(≤ MariaDB 10.1.45, MariaDB 10.2.32, MariaDB 10.3.23, MariaDB 10.4.13, MariaDB 10.5.3) -
0до255(≥ MariaDB 10.1.46, MariaDB 10.2.33, MariaDB 10.3.24, MariaDB 10.4.14, MariaDB 10.5.4)
-
innodb_extra_rsegments
- Описание: Удален в XtraDB 5.5 и заменен на innodb_rollback_segments. Обычно существует один сегмент отката, защищенный одним мьютексом, источник конкуренции в средах с высокой интенсивностью записи. Этот параметр указывает количество дополнительных пользовательских сегментов отката. Изменение значения по умолчанию сделает данные доступными только для чтения XtraDB и несовместимо с InnoDB. После изменения сервер должен быть выключен с помощью slow-shutdown. Если существуют существующие данные, их необходимо экспортировать перед изменением и импортировать заново после того, как изменение вступит в силу.
-
Командная строка:
--innodb-extra-rsegments=# - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до126 - Удален: XtraDB 5.5 - заменен на innodb_rollback_segments
innodb_extra_undoslots
-
Описание: Обычно InnoDB имеет 1024 слота отката в своем сегменте отката, поэтому 1024 транзакции могут выполняться параллельно. Новые транзакции завершатся неудачей, если все слоты будут заняты. Установка этого параметра в
1увеличивает количество доступных слотов отката до 4072. Не рекомендуется, если только вы не получаете ошибкуWarning: cannot find a free slot for an undo logв журнале ошибок, поскольку это делает файлы данных непригодными для ibbackup или серверов MariaDB, не работающих с этим параметром. См. также журнал отката. -
Командная строка:
--innodb-extra-undoslots={0|1} - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удален: XtraDB 5.5
innodb_fake_changes
- Описание: С MariaDB 5.5 до MariaDB 10.1, параметр только для XtraDB, который включает функцию фиктивных изменений. В репликации настройка или перезапуск реплики могут привести к замедлению чтения репликации, поскольку MariaDB является однопоточной и должна прочитать данные, прежде чем сможет выполнить запросы. Это можно ускорить, используя потоки предварительной выборки для подготовки сервера, воспроизведения инструкций, а затем отката при фиксации. Однако это имеет накладные расходы от блокировки строк только для отмены изменений при отката. Фиктивные изменения пытаются уменьшить эти накладные расходы, читая строки для инструкций INSERT, UPDATE и DELETE, но не обновляя их. Тогда откат выполняется очень быстро, практически без каких-либо действий. Добавлен как устаревший и игнорируемый параметр в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB) для упрощения обновления. Отсутствует в MariaDB 10.3 и выше.
-
Командная строка:
--innodb-fake-changes={0|1} - Область видимости: Глобальная, Сессия
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревший: MariaDB 10.2.6
- Удален: MariaDB 10.3.0
innodb_fast_checksum
-
Описание: Реализует более эффективный алгоритм контрольной суммы XtraDB для ЦП, полезный для нагрузок с интенсивной записью и высоким уровнем ввода-вывода. Если установлен в
1на сервере с таблицами, которые были созданы с установленным значением0, чтение будет медленнее, поэтому таблицы должны быть пересозданы (экспортированы и перезагружены). XtraDB не запустится, если установлен в0, а таблицы созданы, когда он был установлен в1. Заменен на innodb_checksum_algorithm в MariaDB 10.0/XtraDB 5.6. -
Командная строка:
--innodb-fast-checksum={0|1} - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удален: MariaDB 10.0/XtraDB 5.6 - заменен на innodb_checksum_algorithm
innodb_fast_shutdown
-
Описание: Режим выключения.
-
0- InnoDB выполняет медленное выключение, включая полную очистку (до MariaDB 10.3.6, не всегда, из-за MDEV-13603) и слияние буфера изменений. Может быть очень медленным, даже занимая часы в экстремальных случаях. -
1- по умолчанию, InnoDB выполняет быстрое выключение, не выполняя полной очистки или слияния буфера вставок. -
2, журнал повтора InnoDB очищается, и происходит холодное выключение, аналогичное аварийному завершению работы. Последующий запуск затем выполняет восстановление после сбоя. Чрезвычайно быстро, в чрезвычайных ситуациях, но рискует повреждением данных. Не подходит для обновлений между основными версиями! -
3(с MariaDB 10.3.6) - активные транзакции не будут отменены, но все измененные страницы будут записаны в файлы данных. Активные транзакции будут отменены фоновым потоком при последующем запуске. Самый быстрый вариант, который не будет включать применение журнала повтора InnoDB при последующем запуске. См. MDEV-15832.
-
-
Командная строка:
--innodb-fast-shutdown[=#] - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до3(>= MariaDB 10.3.6),0до2(<= MariaDB 10.3.5)
innodb_fatal_semaphore_wait_threshold
- Описание: В MariaDB время ожидания фатального семафора настраивается. Этот параметр устанавливает максимальное количество секунд для ожидания семафоров в InnoDB.
-
Командная строка:
--innodb-fatal-semaphore-wait-threshold=# - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
600 -
Диапазон:
1до4294967295
innodb_file_format
-
Описание: Формат файла для новых таблиц InnoDB. Может быть
Antelope, значение по умолчанию и исходный формат, илиBarracuda, который поддерживает сжатие. Обратите внимание, что это значение также используется при пересоздании таблицы с помощью ALTER TABLE, которая требует копирования таблицы. См. XtraDB/InnoDB File Format для получения дополнительной информации о форматах файлов. Удален в 10.3.1 и восстановлен как устаревшая и неиспользуемая переменная в 10.4.3 в целях совместимости. -
Командная строка:
--innodb-file-format=value - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
string -
Значение по умолчанию:
-
Barracuda
-
-
Допустимые значения:
Antelope,Barracuda - Устаревший: MariaDB 10.2
- Удален: MariaDB 10.3.1
- Вновь введен: MariaDB 10.4.3 (в целях совместимости)
- Удален: MariaDB 10.6.0
innodb_file_format_check
-
Описание: Если установлено в
1, значение по умолчанию, InnoDB проверяет тег формата файла общего табличного пространства. Если он выше текущей версии, поддерживаемой XtraDB/InnoDB (например, Barracuda, когда поддерживается только Antelope), XtraDB/InnoDB не запустится. Если значение не выше, XtraDB/InnoDB запускается корректно, и значение innodb_file_format_max устанавливается в это значение. Если innodb_file_format_check установлено в0, проверка не выполняется. См. XtraDB/InnoDB File Format для получения дополнительной информации о форматах файлов. -
Командная строка:
--innodb-file-format-check={0|1} - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревший: MariaDB 10.2
- Удален: MariaDB 10.3.1
innodb_file_format_max
- Описание: Наивысший формат файла XtraDB/InnoDB. Устанавливается в значение тега формата файла в общем табличном пространстве при запуске (см. innodb_file_format_check). Если сервер впоследствии создаст табличный формат выше, innodb_file_format_max устанавливается в это значение. Подробнее о форматах файлов см. Формат файла XtraDB/InnoDB.
-
Командная строка:
--innodb-file-format-max=value - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
string -
Значение по умолчанию:
Antelope -
Допустимые значения:
Antelope,Barracuda - Устаревший: MariaDB 10.2
- Удален: MariaDB 10.3.1
innodb_file_per_table
-
Описание: Если установлено в
ON, новые таблицы InnoDB создаются со своими табличными пространствами InnoDB с файлом на таблицу. Если установлено вOFF, новые таблицы создаются в системном табличном пространстве InnoDB вместо этого. Сжатие страниц доступно только с табличными пространствами с файлом на таблицу. Обратите внимание, что это значение также используется, когда таблица пересоздается с помощью ALTER TABLE, что требует копирования таблицы. Устаревший в MariaDB 11.0, поскольку нет преимуществ в установке значенияOFF, что является исходным значением по умолчанию InnoDB. -
Командная строка:
--innodb-file-per-table - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревший: MariaDB 11.0.1
innodb_fill_factor
-
Описание: Процент заполнения страницы B-дерева во время массового вставки (построение отсортированного индекса). Используется как подсказка, а не как абсолютное значение. Например, установка в
70резервирует 30% пространства на каждой странице B-дерева для будущего роста индекса. -
Командная строка:
--innodb-fill-factor=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
100 -
Диапазон:
10до100
innodb_flush_log_at_timeout
- Описание: Интервал в секундах для записи и сброса журнала пересоздания InnoDB. До MariaDB 10 этот параметр был фиксированным значением в одну секунду, что по-прежнему является значением по умолчанию, но теперь его можно изменить. Обычно увеличивается для уменьшения сброса и предотвращения влияния на работу группового коммита двоичного журнала.
- Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до2700
innodb_flush_log_at_trx_commit
-
Описание: Установлено в
1, вместе с sync_binlog=1 для максимального уровня отказоустойчивости. Значение innodb_use_global_flush_log_at_trx_commit определяет, можно ли сбросить это значение с помощью оператора SET или нет.-
1Значение по умолчанию, буфер журнала записывается в файл журнала пересоздания InnoDB и выполняется сброс на диск после каждой транзакции. Это необходимо для полного соответствия ACID. -
0При выполнении коммита ничего не делается; вместо этого буфер журнала записывается и сбрасывается в журнал пересоздания InnoDB один раз в секунду. Это обеспечивает лучшую производительность, но при сбое сервера может быть потеряна последняя секунда транзакций. -
2Буфер журнала записывается в журнал пересоздания InnoDB после каждого коммита, но сброс происходит каждые innodb_flush_log_at_timeout секунд (по умолчанию один раз в секунду). Производительность немного выше, но при сбоях операционной системы или отключении питания могут быть потеряны транзакции последней секунды. -
3Эмулирует MariaDB 5.5 групповой коммит (3 синхронизации на групповой коммит). См. Групповой коммит двоичного журнала и innodb_flush_log_at_trx_commit. Эта опция не работает правильно с версии 10.2 и может быть удалена в будущем, см. https://github.com/MariaDB/server/pull/1873
-
-
Командная строка:
--innodb-flush-log-at-trx-commit[=#] - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
1 -
Допустимые значения:
0,1,2или3
innodb_flush_method
-
Описание: Метод сброса кэша InnoDB. Windows всегда использует async_unbuffered, и эта переменная не имеет эффекта. В Unix, до MariaDB 10.6.0, по умолчанию используется fsync() для сброса данных и логов. Настройка этой переменной может улучшить производительность, но поведение сильно варьируется в зависимости от файловой системы, и изменение от значения по умолчанию вызвало проблемы в некоторых ситуациях, поэтому тщательно протестируйте и проведите бенчмаркинг перед настройкой. В MariaDB Windows распознает и корректно обрабатывает методы Unix, но если не указано ничего, используется собственный стандартный метод - небуферизованная запись (аналог O_DIRECT) + синхронизация (например, FileFlushBuffers()) для всех файлов.
-
O_DSYNC- для открытия и сброса логов используется O_DSYNC, а для сброса файлов данных - fsync(). -
O_DIRECT- используется O_DIRECT или directio() для открытия файлов данных, а fsync() для сброса данных и логов. Значение по умолчанию в Unix начиная с MariaDB 10.6.0. -
fsync- Значение по умолчанию в Unix до MariaDB 10.5. Можно указать напрямую, но если переменная не установлена в Unix, по умолчанию будет использоваться fsync(). -
O_DIRECT_NO_FSYNC- представлена в MariaDB 10.0. Использует O_DIRECT во время сброса ввода-вывода, но пропускает fsync() после этого. Не подходит для файловых систем XFS. В целом не рекомендуется вместо O_DIRECT, так как не получает преимущества от innodb_use_native_aio=ON. -
ALL_O_DIRECT- представлена в MariaDB 5.5 и доступна только с XtraDB. Использует O_DIRECT для открытия как файлов данных, так и логов, и fsync() для сброса данных, но не логов. Используйте только с большими файлами InnoDB, иначе это может привести к снижению производительности. Установите innodb_log_block_size в 4096 для файловых систем ext4. Это стандартный размер блока лога в ext4 и позволит избежать предупреждений о невыровненном AIO/DIO. -
unbuffered- значение по умолчанию только для Windows -
async_unbuffered- только для Windows, псевдоним дляunbuffered -
normal- только для Windows, псевдоним дляfsync -
littlesync- только для внутренних тестов -
nosync- только для внутренних тестов
-
- Устарело в MariaDB 11.0 и заменено четырьмя динамическими булевыми переменными, которые можно изменить во время работы сервера: innodb_log_file_buffering (отключить O_DIRECT, добавлено в MDEV-28766 в 10.8.4, 10.9.2), innodb_data_file_buffering (отключить O_DIRECT для файлов данных), innodb_log_file_write_through (включить O_DSYNC для лога), innodb_data_file_write_through (включить O_DSYNC для постоянных файлов данных)
С MariaDB 11.0, если установлено одно из следующих значений, значения четырех булевых флагов будут установлены следующим образом:-
O_DSYNC: innodb_log_file_write_through=ON, innodb_data_file_write_through=ON, innodb_data_file_buffering=OFF и (если поддерживается) innodb_log_file_buffering=OFF. -
fsync,littlesync,nosync, или (только для Microsoft Windows)normal: innodb_log_file_write_through=OFF, innodb_data_file_write_through=OFF и innodb_data_file_buffering=ON.
-
-
Командная строка:
--innodb-flush-method=name - Область: Глобальная
- Динамический: Нет
-
Тип данных:
enumeration(>= MariaDB 10.3.7),string(<= MariaDB 10.3.6) -
Значение по умолчанию:
-
O_DIRECT(Unix, >= MariaDB 10.6.0) -
fsync(Unix, >= MariaDB 10.3.7, <= MariaDB 10.5) - Не установлено (<= MariaDB 10.3.6)
-
-
Допустимые значения:
- Unix:
fsync,O_DSYNC,littlesync,nosync.O_DIRECT,O_DIRECT_NO_FSYNC - Windows:
unbuffered,async_unbuffered,normal
- Unix:
- Устарело: MariaDB 11.0
innodb_flush_neighbor_pages
-
Описание: Определяет, будут ли смежные страницы в файле данных сбрасываться одновременно с необработанными страницами при сбросе необработанных страниц в файл данных. Если установлено
none, функция отключена. Если установленоarea, по умолчанию, используется стандартное поведение InnoDB. Для каждой сбрасываемой страницы сбрасываются также смежные необработанные страницы. Если задержка поиска головок невелика, например, в SSD или достаточно большом буфере записи, один из других двух вариантов может быть более эффективным. Если установленоcont, для каждой сбрасываемой страницы сбрасываются смежные непрерывные блоки одновременно. Так как они непрерывны, используется последовательный ввод-вывод в отличие от случайного ввода-вывода, используемого вarea. Заменено на innodb_flush_neighbors в MariaDB 10.0/XtraDB 5.6. -
Командная строка:
innodb-flush-neighbor-pages=value - Область: Глобальная
- Динамический: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
area -
Допустимые значения:
noneили0,areaили1,contили2 - Удалено: MariaDB 10.0/XtraDB 5.6 - заменено на innodb_flush_neighbors
innodb_flush_neighbors
-
Описание: Определяет, будет ли сброс страницы из буфера пула сбрасывать и другие необработанные страницы в той же группе страниц (экстенте). В средах с высокой скоростью записи, если сброс недостаточно агрессивный, он может отставать, что приводит к увеличению использования памяти, или если сброс слишком агрессивный, может вызвать избыточную активность ввода-вывода. Устройства SSD с низким временем поиска, скорее всего, не потребуют сброса смежных необработанных страниц. Начиная с MariaDB 10.4.4 предпринимается попытка определить статус SSD в Windows и Linux, что было показано в information_schema.innodb_tablespaces_scrubbing_table. Эта переменная игнорируется для табличных пространств, которые определяются как хранящиеся на SSD (и применяется поведение
0).-
1: По умолчанию сбрасывает смежные необработанные страницы в том же экстенте из буфера пула. -
0: Другие необработанные страницы не сбрасываются. -
2: Сбрасывает необработанные страницы в том же экстенте из буфера пула.
-
-
Командная строка:
--innodb-flush-neighbors=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
1 -
Допустимые значения:
0,1,2
innodb_flush_sync
-
Описание: Если установлено значение
ON, по умолчанию, значение innodb_io_capacity игнорируется для всплесков ввода-вывода, происходящих в точках проверки. -
Командная строка:
--innodb-flush-sync={0|1} - Область: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_flushing_avg_loops
- Описание: Определяет, как быстро адаптивный сброс отреагирует на изменения рабочей нагрузки. Значение — количество итераций, в течение которых сохраняется предыдущая расчетная информация о состоянии сброса. Увеличение значения сглаживает и замедляет скорость изменения операций сброса, а уменьшение приводит к быстрому скачку активности сброса в ответ на изменения рабочей нагрузки.
-
Командная строка:
--innodb-flushing-avg-loops=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
30 -
Диапазон:
1до1000
innodb_force_load_corrupted
-
Описание: По умолчанию установлено в
0, если установлено в1, InnoDB будет разрешено загружать таблицы, помеченные как поврежденные. Используйте это только для восстановления данных, которые нельзя восстановить другими способами, или при устранении неполадок. Всегда восстанавливайте значение до0при возвращении к обычному использованию. Учитывая, что MDEV-11412 в MariaDB 10.5.4 нацелен на возможность удаления любой метаданных для отсутствующей или поврежденной таблицы, и с учетом того, что MDEV-17567 и MDEV-25506 и связанные задачи сделали операции DDL безопасными при сбоях, параметр больше не выполняет никаких функций и был удален в MariaDB 10.6.6. -
Командная строка:
--innodb-force-load-corrupted - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.6.6
innodb_force_primary_key
-
Описание: Если установлено в
1(0по умолчанию), CREATE TABLE без первичного или уникального ключа, где все части ключа НЕ NULL, не будут приняты и вернут ошибку. -
Командная строка:
--innodb-force-primary-key - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_force_recovery
-
Описание: Режим восстановления сбоя InnoDB.
0по умолчанию. Другие режимы предназначены только для целей восстановления, и никакие данные не могут быть изменены, пока активен другой режим. Также заблокированы некоторые запросы, использующие индексы. Подробнее о режимах см. в разделе Режимы восстановления InnoDB. -
Командная строка:
--innodb-force-recovery=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
enumeration -
Значение по умолчанию:
0 -
Диапазон:
0до6
innodb_foreground_preflush
-
Описание: Перед XtraDB 5.6.13-61.0, если возраст контрольной точки находится в зоне синхронизации предварительного сброса, в то время как поток записывает в XtraDB журнал пересчета, он попытается продвинуть контрольную точку, выпустив сброс списка сброса пакетных сбросов, если это еще не выполняется. XtraDB улучшил настройку очистки страниц и, возможно, уже выполняет яростные сбросы, что приводит к простому добавлению ненужного давления на мьютекс в сброс. Вместо этого поток теперь ожидает завершения сбросов, а затем имеет два варианта, управляемые этой переменной. Только XtraDB. Добавлено в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (использует InnoDB по умолчанию вместо XtraDB) для упрощения обновлений.
-
exponential_backoff- поток ждет, пока произойдет сброс списка сброса пакета. Время ожидания случайным образом постепенно увеличивается, периодически сбрасывается, чтобы избежать бесконечного ожидания. -
sync_preflush- поток выдает пакет сброса списка и ждет его завершения. Это то же самое, что используется, когда поток очистки страниц не работает.
-
-
Командная строка:
innodb-foreground-preflush=value - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
enum -
Значение по умолчанию:
-
deprecated
-
-
Допустимые значения:
-
deprecated,exponential_backoff,sync_preflush
-
- Устаревший: MariaDB 10.2.6
- Удален: MariaDB 10.3.0
innodb_ft_aux_table
-
Описание: Диагностическая переменная, которая должна быть установлена только во время выполнения. Она указывает полное имя (например,
test/ft_innodb) таблицы InnoDB с индексом FULLTEXT, и после установки таблицы INFORMATION_SCHEMA INNODB_FT_INDEX_TABLE, INNODB_FT_INDEX_CACHE, INNODB_FT_CONFIG, INNODB_FT_DELETED и INNODB_FT_BEING_DELETED будут содержать информацию об индексе поиска для указанной таблицы. -
Командная строка:
--innodb-ft-aux-table=value - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
string
innodb_ft_cache_size
- Описание: Размер кэша, доступный для обработанного документа при создании индекса FULLTEXT InnoDB.
-
Командная строка:
--innodb-ft-cache-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
8000000
innodb_ft_enable_diag_print
-
Описание: Если установлено в
1, включен дополнительный диагностический вывод поиска по полному тексту. -
Командная строка:
--innodb-ft-enable-diag-print={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_ft_enable_stopword
-
Описание: Если установлено в
1, по умолчанию, набор стоп-слов связывается с индексом FULLTEXT InnoDB при его создании. Список стоп-слов берется из таблицы, установленной сессионной переменной innodb_ft_user_stopword_table, если установлена, в противном случае из глобальной переменной innodb_ft_server_stopword_table, если она установлена, или из встроенного списка, если ни одна из переменных не установлена. -
Командная строка:
--innodb-ft-enable-stopword={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_ft_max_token_size
- Описание: Максимальная длина слов, хранящихся в индексе FULLTEXT InnoDB. Больший предел увеличит размер индекса, замедлив запросы, но позволит искать более длинные слова. В большинстве обычных ситуаций более длинные слова являются маловероятными поисковыми терминами.
-
Командная строка:
--innodb-ft-max-token-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
84 -
Диапазон:
10до84
innodb_ft_min_token_size
- Описание: Минимальная длина слов, хранящихся в индексе FULLTEXT InnoDB. Более низкий предел увеличит размер индекса, замедлив запросы, но позволит искать более короткие слова. Для данных, хранящихся в наборе символов китайского, японского или корейского языка, значение 1 должно быть указано для сохранения функциональности.
-
Командная строка:
--innodb-ft-min-token-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
3 -
Диапазон:
0до16
innodb_ft_num_word_optimize
- Описание: Количество слов, обрабатываемых во время каждой команды OPTIMIZE TABLE на индексе FULLTEXT InnoDB. Чтобы гарантировать включение всех изменений, можно выполнить несколько команд OPTIMIZE TABLE в случае существенных изменений в индексе.
-
Командная строка:
--innodb-ft-num-word-optimize=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
2000
innodb_ft_result_cache_limit
- Описание: Предел в байтах кэша результатов запросов индекса FULLTEXT InnoDB на запрос по полному тексту. Поздние этапы поиска по полному тексту выполняются в памяти, и ограничение предотвращает чрезмерное использование памяти. Если предел превышен, запрос возвращает ошибку.
-
Командная строка:
--innodb-ft-result-cache-limit=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
2000000000 -
Диапазон:
1000000до18446744073709551615
innodb_ft_server_stopword_table
- Описание: Имя таблицы, содержащей список стоп-слов, которые следует игнорировать при создании полнотекстового индекса InnoDB FULLTEXT, в формате db_name/table_name. Указанная таблица должна существовать до установки этого параметра и должна быть таблицей InnoDB с одним столбцом, VARCHAR под названием VALUE. См. также innodb_ft_enable_stopword.
-
Командная строка:
--innodb-ft-server-stopword-table=db_name/table_name - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
string - Значение по умолчанию: Пустое
innodb_ft_sort_pll_degree
- Описание: Количество потоков, используемых параллельно при создании полнотекстового индекса InnoDB FULLTEXT. См. также innodb_sort_buffer_size.
-
Командная строка:
--innodb-ft-sort-pll-degree=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
2 -
Диапазон:
1до32
innodb_ft_total_cache_size
- Описание: Общий объём памяти, выделенный для кэша всех таблиц с полнотекстовыми индексами InnoDB FULLTEXT. При превышении этого предела запускается принудительная синхронизация.
-
Командная строка:
--innodb-ft-total-cache-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
640000000 -
Диапазон:
32000000до1600000000 - Введено в: MariaDB 10.0.9
innodb_ft_user_stopword_table
- Описание: Имя таблицы, содержащей список стоп-слов, которые следует игнорировать при создании полнотекстового индекса InnoDB FULLTEXT, в формате db_name/table_name. Указанная таблица должна существовать до установки этого параметра и должна быть таблицей InnoDB с одним столбцом, VARCHAR под названием VALUE. См. также innodb_ft_enable_stopword.
-
Командная строка:
--innodb-ft-user-stopword-table=db_name/table_name - Область действия: Сеанс
- Динамический: Да
-
Тип данных:
string - Значение по умолчанию: Пустое
innodb_ibuf_accel_rate
-
Описание: Разрешает настроить активность буфера вставки. Используется следующая формула: [фактическая активность] = [активность по умолчанию] * (innodb_io_capacity/100) * (innodb_ibuf_accel_rate/100). Повышение значения
innodb_ibuf_accel_rateот значения по умолчанию100увеличивает активность буфера вставки. См. также innodb_io_capacity. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. -
Командная строка:
innodb-ibuf-accel-rate=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
100 -
Диапазон:
100до999999999 - Удалено в: MariaDB 10.0
innodb_ibuf_active_contract
-
Описание: Указывает, можно ли обработать буфер вставки до заполнения. Если установлено значение
0, используется стандартный метод InnoDB, и буфер обрабатывается только после заполнения. Если установлено значение1, по умолчанию, буфер вставки может обрабатываться до заполнения. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. -
Командная строка:
innodb-ibuf-active-contract=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до1 - Удалено в: MariaDB 10.0
innodb_ibuf_max_size
-
Описание: Максимальный размер буфера вставки в байтах. По умолчанию равен половине размера пула буферов buffer pool, поэтому его можно уменьшить, если у вас очень большой пул буферов. Если установлено значение
0, буфер вставки отключен, что приведет к тому, что все обновления вторичных индексов будут выполняться синхронно, обычно за счёт производительности. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. -
Командная строка:
innodb-ibuf-max-size=# - Область действия: Глобальная
- Динамический: Нет
-
Тип данных:
numeric - Значение по умолчанию: 1/2 размера пула буферов InnoDB
-
Диапазон:
0до 1/2 размера пула буферов InnoDB - Удалено в: MariaDB 10.0
innodb_idle_flush_pct
- Описание: До какой процентной доли грязных страниц нужно выполнить сброс, когда innodb обнаружит наличие свободных ресурсов для этого. Не оказывает никакого влияния с момента слияния InnoDB 5.7 из mysql-5.7.9 (MariaDB 10.2.2). Устарело в MariaDB 10.2.37, MariaDB 10.3.28, MariaDB 10.4.18 и удалено в MariaDB 10.5.9.
-
Командная строка:
--innodb-idle-flush-pct=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
100 -
Диапазон:
0до100 - Устарело в: MariaDB 10.2.37, MariaDB 10.3.28, MariaDB 10.4.18
- Удалено в: MariaDB 10.5.9
innodb_immediate_scrub_data_uncompressed
- Описание: Включить очистку данных. См. Очистка данных.
-
Командная строка:
--innodb-immediate-scrub-data-uncompressed={0|1} - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_import_table_from_xtrabackup
-
Описание: Если установлено в значение
1, разрешает импорт файлов .ibd, экспортированных с помощью параметра XtraBackup --export. Предыдущее имяinnodb_expand_import. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено на transportable tablespaces MySQL 5.6. -
Командная строка:
innodb-import-table-from-xtrabackup=# - Область действия: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до1 - Удалено в: MariaDB 10.0
innodb_instant_alter_column_allowed
-
Описание:
- Если таблица изменяется с помощью ALGORITHM=INSTANT, она может быть принудительно переведена в неканонический формат: скрытый метаданных запись в начале кластеризованного индекса используется для хранения значения по умолчанию каждого столбца. Это позволяет добавлять новые столбцы со значениями по умолчанию без перестройки таблицы. Начиная с MariaDB 10.4, BLOB в скрытой записи метаданных используется для хранения сопоставления столбцов. Это позволяет удалять или менять порядок столбцов без перестройки таблицы. Это также позволяет добавлять столбцы в любую позицию или удалять столбцы из любой позиции в таблице без перестройки таблицы. Если столбец удаляется без перестройки таблицы, старые записи будут содержать мусор на прежнем месте столбца, а новые записи будут записываться со значениями NULL, пустые строки или значениями-заглушками.
- В целом это не проблема. Однако могут быть случаи, когда вы хотите избежать приведения таблицы к этому формату. Например, чтобы гарантировать, что будущие операции UPDATE после добавления столбца (ADD COLUMN) будут выполняться на месте, уменьшая увеличение записи. (Вставленные мгновенно столбцы по существу всегда имеют переменную длину.) Также избегайте ошибок, похожих на MDEV-19916, или для возможности экспорта таблиц в более старые версии сервера.
- Эта переменная была введена в результате, со следующими значениями:
-
never(0): Не разрешить мгновенное добавление/удаление/перестановку, чтобы сохранить совместимость формата с MariaDB 10.x и MySQL 5.x. Если таблица (или раздел) не находится в каноническом формате, то любое ALTER TABLE (даже то, которое не включает мгновенные операции над столбцами) заставит перестроить таблицу. -
add_last(1, значение по умолчанию в 10.3): Сохранить скрытую запись метаданных, которая позволяет добавлять столбцы в таблицу мгновенно (MDEV-11369). В 10.4 или более поздних версиях, если таблица (или раздел) не находится в этом формате, то любое ALTER TABLE (даже то, которое не включает изменения столбцов) заставит перестроить таблицу. -
add_drop_reorder(2, значение по умолчанию): Только начиная с MariaDB 10.4. Как 'add_last', но позволяет записи метаданных хранить карту столбцов для поддержки мгновенного добавления/удаления/перестановки столбцов.
-
Командная строка:
--innodb-instant-alter-column-allowed=value - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enum -
Допустимые значения:
- <= MariaDB 10.3:
never,add_last - >= MariaDB 10.4:
never,add_last,add_drop_reorder
- <= MariaDB 10.3:
-
Значение по умолчанию:
- <= MariaDB 10.3:
add_last - >= MariaDB 10.4:
add_drop_reorder
- <= MariaDB 10.3:
- Введено: MariaDB 10.3.23, MariaDB 10.4.13, MariaDB 10.5.3
innodb_instrument_semaphores
- Описание: Включить инструментирование запросов семафоров. Это может повлиять на производительность, но позволит получить лучшую информацию о проблемах с длительными ожиданиями семафоров.
-
Командная строка:
--innodb-instrument-semaphores={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF -
Устарело: MariaDB 10.2.5 (обрабатывается как
OFF) - Удалено: MariaDB 10.3.0
innodb_io_capacity
-
Описание: Ограничение активности ввода-вывода для фоновых задач InnoDB, включая слияние данных из буфера вставки и сброс страниц. Должно быть установлено примерно равным количеству операций ввода-вывода в секунду, которые может обработать система, в зависимости от типа используемых дисков. Вы также можете установить его выше при запуске сервера, чтобы помочь с дополнительной нагрузкой в этот момент, а затем уменьшить для обычного использования. В идеале следует выбрать более низкое значение, так как при более высоких значениях данные удаляются из буферов слишком быстро, что снижает эффективность кэширования. См. также innodb_flush_sync.
- См. InnoDB Page Flushing: Configuring the InnoDB I/O Capacity для получения дополнительной информации.
-
Командная строка:
--innodb-io-capacity=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
200 -
Диапазон:
100до18446744073709551615(264-1)
innodb_io_capacity_max
- Описание: Верхний предел, до которого InnoDB может увеличить innodb_io_capacity в случае чрезвычайной ситуации. См. InnoDB Page Flushing: Configuring the InnoDB I/O Capacity для получения дополнительной информации.
-
Командная строка:
--innodb-io-capacity-max=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
2000или удвоенное значение innodb_io_capacity, в зависимости от того, что больше. -
Диапазон:
100до18446744073709551615(264-1)
innodb_kill_idle_transaction
-
Описание: Время в секундах, после которого будет убита неактивная транзакция XtraDB. Если установлено значение
0(значение по умолчанию), функция отключена. Используется для предотвращения случайных блокировок пользователя. Только XtraDB. Добавлено в качестве устаревшей и игнорируемой опции в MariaDB 10.2.6 (по умолчанию используется InnoDB вместо XtraDB) для облегчения обновлений. - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до9223372036854775807 - Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_large_prefix
-
Описание: Если установлено значение
1, таблицам, использующим определенные форматы строк, разрешается иметь префиксы ключей индексов до 3072 байт (для страниц 16К, меньше в противном случае). Если не установлено, ограничение составляет 767 байт.- Это относится к форматам строк
DYNAMICиCOMPRESSED. - Удалено в 10.3.1 и восстановлено как устаревшая и неиспользуемая переменная в 10.4.3 для совместимости.
- Это относится к форматам строк
-
Командная строка:
--innodb-large-prefix - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
-
ON
-
- Устарело: MariaDB 10.2
- Удалено: MariaDB 10.3.1
- Вновь введено: MariaDB 10.4.3 (для совместимости)
- Удалено: MariaDB 10.6.0
innodb_lazy_drop_table
-
Описание: Устарело и удалено в XtraDB 5.6. Обработка DROP TABLE может занимать много времени, когда innodb_file_per_table установлено в 1 и имеется большой буфер пула. Если
innodb_lazy_drop_tableустановлено в1(0— значение по умолчанию), XtraDB пытается оптимизировать обработку DROP TABLE, отложив удаление связанных страниц из буфера пула до появления времени, помечая их только вначале. -
Командная строка:
innodb-lazy-drop-table={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
0 - Устарело: XtraDB 5.5.30-30.2
- Удалено: MariaDB 10.0.0
innodb_lock_schedule_algorithm
-
Описание: Указывает алгоритм, который InnoDB использует для определения, какая из ожидающих транзакций должна получить блокировку после её освобождения. Возможные значения:
FCFS(первое прибытие - первое обслуживание), где блокировки предоставляются в порядке их появления в очереди блокировок, иVATS(учёт вариаций - планирование транзакций), где блокировки предоставляются на основе эвристики «сначала самая старая транзакция». Обратите внимание, чтоVATSне следует использовать с Galera, и InnoDB откажется от запуска, еслиVATSиспользуется с Galera. Начиная с MariaDB 10.2.12, значение было изменено наFCFSи выводится предупреждение при использовании с Galera. -
Команда командной строки:
--innodb-lock-schedule-algorithm=# - Область действия: Глобальная
- Динамическое: Нет (>= MariaDB 10.2.12, MariaDB 10.1.30), Да (<= MariaDB 10.2.11, MariaDB 10.1.29)
-
Тип данных:
enum -
Допустимые значения:
FCFS,VATS -
Значение по умолчанию:
FCFS(MariaDB 10.3.9, MariaDB 10.2.17),VATS(MariaDB 10.2.3),FCFS(MariaDB 10.1) - Устаревший: MariaDB 10.5.7, MariaDB 10.4.16, MariaDB 10.3.26, MariaDB 10.2.35
- Удалено: MariaDB 10.6.0
innodb_lock_wait_timeout
-
Описание: Время в секундах, которое InnoDB транзакция ожидает блокировки InnoDB записи (или таблицы) перед отказом с ошибкой
ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction. При этом происходит откат запроса (не транзакции). Весь транзакция может быть отката, если используется опция innodb_rollback_on_timeout. Увеличьте это значение для приложений обработки больших данных или где часто используются другие длительные операции, или уменьшите для приложений OLTP и других высокоинтерактивных приложений. Это значение не относится к тупиковым ситуациям, которые InnoDB обнаруживает немедленно, откатывая тупиковую транзакцию.0означает «без ожидания». См. WAIT и NOWAIT. Установка значения100000000или больше (начиная с MariaDB 10.6.3,100000000максимальное значение) означает, что таймаут бесконечный. -
Команда командной строки:
--innodb-lock-wait-timeout=# - Область действия: Глобальная, Сеанс
- Динамическое: Да
-
Тип данных:
INT UNSIGNED(>= MariaDB 10.6.3),BIGINT UNSIGNED(<= MariaDB 10.6.2) -
Значение по умолчанию:
50 -
Диапазон:
-
0до100000000(>= MariaDB 10.6.3) -
0до1073741824(>= MariaDB 10.3 до <= MariaDB 10.6.2)
-
innodb_locking_fake_changes
-
Описание: От MariaDB 5.5 до MariaDB 10.1, только XtraDB — опция, которая, если установлена в значение
OFF, фейковые транзакции (см. innodb_fake_changes) не берут блокировки строк. Это экспериментальная функция, которая пытается справиться с недостатками блокировок фейковых изменений реальных блокировок. Не рекомендуется использовать во всех средах. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления. -
Команда командной строки:
--innodb-locking-fake-changes - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревшая: MariaDB 10.2.6
- Удалена: MariaDB 10.3.0
innodb_locks_unsafe_for_binlog
-
Описание: По умолчанию установлено в значение
0, в этом случае XtraDB/InnoDB использует блокировки щелей. Если установлено в значение1, блокировки щелей отключены для поиска и сканирования индексов. Устарело в MariaDB 10.0 и удалено в MariaDB 10.5, вместо этого используйте уровень изоляции транзакций READ COMMITTED. -
Команда командной строки:
--innodb-locks-unsafe-for-binlog - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревшая: MariaDB 10.0
- Удалена: MariaDB 10.5.0
innodb_log_arch_dir
- Описание: Каталог для архивирования XtraDB журнала повторного протоколирования. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Команда командной строки:
--innodb-log-arch-dir=name - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
string -
Значение по умолчанию:
./ - Устаревшая: MariaDB 10.2.6
- Удалена: MariaDB 10.3.0
innodb_log_arch_expire_sec
- Описание: Время в секундах с момента последнего изменения, по истечении которого должен быть удален архивированный XtraDB журнал повторного протоколирования. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Команда командной строки:
--innodb-log-arch-expire-sec=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 - Устаревшая: MariaDB 10.2.6
- Удалена: MariaDB 10.3.0
innodb_log_archive
- Описание: Включено ли архивирование XtraDB журнала повторного протоколирования. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Команда командной строки:
--innodb-log-archive={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревшая: MariaDB 10.2.6
- Удалена: MariaDB 10.3.0
innodb_log_block_size
-
Описание: Размер в байтах записей XtraDB журнала повторного протоколирования. Обычно
512, значение по умолчанию, или4096, единственные полезные значения. Если сервер перезапускается, а это значение изменено, все старые файлы журнала нужно удалить. Следует установить в4096для SSD-дисков или если innodb_flush_method установлено вALL_O_DIRECTна файловой системе ext4. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления. -
Команда командной строки:
innodb-log-block-size=# - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
512 - Устаревшая: MariaDB 10.2.6
- Удалена: MariaDB 10.3.0
innodb_log_buffer_size
- Описание: Размер буфера в байтах для записи файлов журналов переопределения InnoDB на диск. Увеличение этого значения позволяет запускать более крупные транзакции без необходимости выполнения операций ввода-вывода на диск перед подтверждением.
-
Командная строка:
--innodb-log-buffer-size=# - Область действия: Глобально
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
16777216(16 МБ) -
Диапазон значений:
262144до4294967295(256 КБ до 4096 МБ)
innodb_log_checksum_algorithm
-
Описание: Экспериментальная функция (начиная с MariaDB 10.0.9), эта переменная определяет, как генерировать и проверять контрольные суммы файлов журнала переопределения XtraDB. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (которая использует InnoDB по умолчанию вместо XtraDB) для упрощения обновлений.
-
none- Без контрольной суммы. Вместо этого постоянное значение записывается в журналы, и проверка контрольной суммы не выполняется. -
innodb- По умолчанию и исходный алгоритм InnoDB. Это неэффективно, но совместимо со всеми версиями MySQL, MariaDB и Percona, которые не поддерживают другие алгоритмы контрольных сумм. -
crc32- Используется CRC32© для контрольных сумм блоков журнала, что также позволяет современным процессорам использовать аппаратное ускорение (на машинах x86 с SSE4.2 и Power8 или новее) для контрольных сумм. -
strict_*- Принимать ли контрольные суммы от других алгоритмов. Если используется строгий режим, блоки контрольных сумм будут считаться поврежденными, если они не соответствуют указанному алгоритму. В обычном случае они считаются поврежденными только в том случае, если ни один другой алгоритм не соответствует.
-
-
Командная строка:
innodb-log-checksum-algorithm=value - Область действия: Глобально
- Динамический: Да
-
Тип данных:
enum -
Значение по умолчанию:
-
deprecated(>= MariaDB 10.2.6) -
innodb(<= MariaDB 10.1)
-
-
Допустимые значения:
-
deprecated,innodb,none,crc32,strict_none,strict_innodb,strict_crc32(>= MariaDB 10.2.6) -
innodb,none,crc32,strict_none,strict_innodb,strict_crc32(<= MariaDB 10.1)
-
- Устаревшее: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_log_checksums
-
Описание: Если установлено в
1, для страниц журналов переопределения InnoDB используется алгоритм CRC32C для InnoDB илиinnodb_log_checksum_algorithmдля XtraDB. Если отключено, содержимое поля контрольной суммы игнорируется. Начиная с MariaDB 10.5.0, переменная устарела, и контрольные суммы всегда вычисляются, так как ранее журнал переопределения InnoDB использовал медленный алгоритм InnoDB, но с доступным аппаратным или SIMD-ускоренным вычислением CRC-32C нет причин разрешать отключение контрольных сумм в журнале переопределения. -
Командная строка:
innodb-log-checksums={0|1} - Область действия: Глобально
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревшее: MariaDB 10.5.0
- Удалено: MariaDB 10.6.0
innodb_log_compressed_pages
- Описание: Сохраняются ли изображения сжатых страниц в журнале переопределения InnoDB. Устарело и игнорируется с MariaDB 10.5.3.
-
Командная строка:
--innodb-log-compressed-pages={0|1} - Область действия: Глобально
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
-
ON
-
- Устаревшее: MariaDB 10.5.3
- Удалено: MariaDB 10.6.0
innodb_log_file_buffering
-
Описание: Включен ли кэш файловой системы для ib_logfile0. В MariaDB 10.8.3 MariaDB по умолчанию отключил кэш файловой системы для файла журнала предварительной записи InnoDB (ib_logfile0) в Linux. С innodb_flush_trx_log_at_commit=2 в частности, запись в журнал через кэш файловой системы обычно улучшает пропускную способность, особенно на медленных хранилищах или при небольшом количестве одновременных транзакций. Для других значений innodb_flush_log_at_trx_commit прямые записи наблюдались в основном, но не всегда, быстрее. Выгодно ли отключать кэш файловой системы в журнале, зависит от типа хранилища, рабочей нагрузки и версии ядра операционной системы. Если сервер запущен с innodb_flush_log_at_trx_commit=2, значение будет изменено на
ON. Будет установлено вOFFесли innodb_flush_method установлено вO_DSYNC. В Linux, когда физический размер блока не может быть определен как степень двойки между 64 и 4096 байтами, кэш файловой системы не может быть отключен, и innodb_log_file_buffering=ON не может быть изменено. Только Linux и Windows. -
Командная строка:
--innodb-log-file-buffering={0|1} - Область действия: Глобально
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 10.8.4, MariaDB 10.9.2
innodb_log_file_size
-
Описание: Размер каждого файла журнала переопределения InnoDB в группе журналов в байтах. Общий размер не может превышать 512 ГБ. Большие значения означают меньший объем ввода-вывода на диск из-за меньшей активности сброса контрольных точек, но также и более медленное восстановление после сбоя. В MariaDB 10.5 восстановление после сбоя было улучшено и не должно вызывать недостаток памяти, поэтому значение по умолчанию было увеличено. Можно безопасно установить его выше, чтобы уменьшить сброс контрольных точек, даже больше, чем innodb_buffer_pool_size.
С MariaDB 10.9 переменная является динамической, и серверу больше не требуется перезапуск для изменения размера. Если журнал не находится в файловой системе с постоянной памятью (PMEM), попытка SET GLOBAL innodb_log_file_size к значению меньшему, чем innodb_log_buffer_size, будет отклонена. Изменение размера журнала можно прервать, завершив подключение, которое выполняет операцию SET GLOBAL. -
Командная строка:
--innodb-log-file-size=# - Область действия: Глобально
- Динамический: Да (>= MariaDB 10.9), Нет (<= MariaDB 10.8)
-
Тип данных:
numeric -
Значение по умолчанию:
100663296(96 МБ) (>= MariaDB 10.5),50331648(48 МБ) (<= MariaDB 10.4) -
Диапазон значений:
- >= MariaDB 10.8.3:
4194304до512GB(4 МБ до 512 ГБ) - <= MariaDB 10.8.2:
1048576до512GB(1 МБ до 512 ГБ)
- >= MariaDB 10.8.3:
innodb_log_file_write_through
-
Описание: Выполняется ли каждый запрос к ib_logfile0 с записью без кеширования (как в O_SYNC или O_DSYNC). Установлено в
OFFпо умолчанию, будет установлено вONесли innodb_flush_method установлено вO_DSYNC. В системах, поддерживающих FUA, может быть целесообразно включить запись без кеширования для избежания дополнительных системных вызовов. -
Командная строка:
--innodb-log-file-write-through={0|1} - Область действия: Глобально
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Введено: MariaDB 11.0.0
innodb_log_files_in_group
- Описание: Количество физических файлов в журнале повторной записи InnoDB. Устарело и игнорируется начиная с MariaDB 10.5.2
-
Командная строка:
--innodb-log-files-in-group=# - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1(>= MariaDB 10.5),2(<= MariaDB 10.4) -
Диапазон:
1до100(>= MariaDB 10.2.4) - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_log_group_home_dir
- Описание: Путь к файлам журналов повторной записи InnoDB. Если путь не указан, файлы innodb_log_files_in_group с именами ib_logfile0 и так далее, размером innodb_log_file_size создаются в каталоге данных.
-
Командная строка:
--innodb-log-group-home-dir=path - Область видимости: Глобальная
- Динамический: Нет
-
Тип данных:
directory name
innodb_log_optimize_ddl
- Описание: Следует ли уменьшать активность журналов повторной записи InnoDB при создании индексов или перестроении таблиц. Уменьшенное логирование требует дополнительной записи страниц на диск и мешает работе Mariabackup. Включение этого параметра может замедлить резервное копирование и вызвать задержку из-за записи страниц на диск. Устарело и игнорируется начиная с MariaDB 10.5.1. Устарело (но не игнорируется) начиная с MariaDB 10.4.16, MariaDB 10.3.26 и MariaDB 10.2.35.
-
Командная строка:
--innodb-log-optimize-ddl={0|1} - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
-
OFF(>= MariaDB 10.5.1, MariaDB 10.4.16, MariaDB 10.3.26, MariaDB 10.2.35) -
ON(<= MariaDB 10.5.0, MariaDB 10.4.15, MariaDB 10.3.25, MariaDB 10.2.34)
-
- Введено: MariaDB 10.2.17, MariaDB 10.3.9
- Устарело: MariaDB 10.5.1, MariaDB 10.4.16, MariaDB 10.3.26, MariaDB 10.2.35
- Удалено: MariaDB 10.6.0
innodb_log_write_ahead_size
- Описание: Размер блока предварительной записи журналов повторной записи InnoDB для предотвращения чтения-при-записи. Должен соответствовать размеру блока кэша ОС. Удалено в MariaDB 10.8, а вместо этого в Linux и Windows определяется и используется физический размер блока базового хранилища.
-
Командная строка:
--innodb-log-write-ahead-size=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
8192 -
Диапазон:
512до innodb_page_size - Удалено: MariaDB 10.8
innodb_lru_flush_size
- Описание: Количество страниц для записи на диск при удалении из LRU.
-
Командная строка:
--innodb-lru-flush-size=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
32 -
Диапазон:
1до18446744073709551615 - Введено: MariaDB 10.5.7
innodb_lru_scan_depth
-
Описание: Указывает, насколько глубоко в списке наименее недавно используемых (LRU) буферного пула поток очистки должен искать грязные страницы для записи на диск. Этот процесс выполняется каждую секунду. При интенсивной работе с вводом-выводом можно увеличить значение, если есть свободный потенциал ввода-вывода, или уменьшить, если это работа с интенсивной записью и небольшим свободным потенциалом ввода-вывода.
- См. Запись страниц InnoDB на диск для получения дополнительной информации.
-
Командная строка:
--innodb-lru-scan-depth=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
1536(>= MariaDB 10.5.7) -
1024(<= MariaDB 10.5.6)
-
-
Диапазон - 32 бита:
100до232-1 -
Диапазон - 64 бита:
100до264-1
innodb_max_bitmap_file_size
-
Описание: Предел в байтах для файлов битовой карты измененных страниц. Для более быстрого инкрементного резервного копирования с помощью Xtrabackup, XtraDB отслеживает страницы с изменениями, записанными на них в соответствии с журналом повторной записи XtraDB, и записывает информацию в специальные файлы битовой карты измененных страниц. Эти файлы поворачиваются при перезапуске сервера или при достижении этого предела. Только XtraDB. См. также innodb_track_changed_pages и innodb_max_changed_pages.
- Устарело и игнорируется в MariaDB 10.2.6 (в котором InnoDB используется по умолчанию вместо XtraDB) для упрощения обновления.
-
Командная строка:
innodb-max-bitmap-file-size=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
4096(4KB) -
Диапазон:
4096(4KB) до18446744073709551615(16EB) - Устарело: MariaDB 10.2.6
innodb_max_changed_pages
-
Описание: Предел количества файлов битовой карты измененных страниц (хранящихся в таблице Information Schema INNODB_CHANGED_PAGES). Ноль означает без ограничений. См. innodb_max_bitmap_file_size и innodb_track_changed_pages. Ранее называлось
innodb_changed_pages_limit. Только XtraDB.- Устарело и игнорируется в MariaDB 10.2.6 (в котором InnoDB используется по умолчанию вместо XtraDB) для упрощения обновления.
-
Командная строка:
innodb-max-changed-pages=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1000000 -
Диапазон:
0до18446744073709551615 - Устарело: MariaDB 10.2.6
innodb_max_dirty_pages_pct
-
Описание: Максимальный процент незаписанных (грязных) страниц в буферном пуле.
- См. Запись страниц InnoDB на диск для получения дополнительной информации.
-
Командная строка:
--innodb-max-dirty-pages-pct=# - Область видимости: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
90.000000(>= MariaDB 10.5.7) -
75.000000(<= MariaDB 10.5.6)
-
-
Диапазон:
0до99.999
innodb_max_dirty_pages_pct_lwm
-
Описание: Процентная доля страниц с низким уровнем заполнения, которые позволят предварительной очистке снизить долю заполненных страниц. Значение 0 (по умолчанию) означает «обращение к innodb_max_dirty_pages_pct».
- Для получения дополнительной информации см. Очистка страниц InnoDB.
-
Команда командной строки:
--innodb-max-dirty-pages-pct-lwm=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до99.999
innodb_max_purge_lag
-
Описание: При отставании операций очистки на загруженном сервере, настройка innodb_max_purge_lag может помочь. По умолчанию установлено
0, что означает отсутствие задержки; это значение используется для расчета временной задержки для каждого INSERT, UPDATE и DELETE, когда система отстает. InnoDB сохраняет список транзакций с отмеченными для удаления записями индексов из-за операторов UPDATE и DELETE. Длина этого списка составляетpurge_lag, а расчет, выполняемый каждую десять секунд, следующий: ((purge_lag/innodb_max_purge_lag)×10)–5 микросекунд. -
Команда командной строки:
--innodb-max-purge-lag=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до4294967295
innodb_max_purge_lag_delay
-
Описание: Максимальная задержка в миллисекундах, накладываемая настройкой innodb_max_purge_lag. Если значение установлено в
0, что соответствует значению по умолчанию, максимальная задержка отсутствует. -
Команда командной строки:
--innodb-max-purge-lag-delay=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0
innodb_max_purge_lag_wait
- Описание: Ожидание, пока длина списка истории станет ниже заданного предела.
-
Команда командной строки:
--innodb-max-purge-wait=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
4294967295 -
Диапазон:
0до4294967295 - Введено: MariaDB 10.5.7, MariaDB 10.4.16, MariaDB 10.3.26, MariaDB 10.2.35
innodb_max_undo_log_size
- Описание: Если размер пространства undo-таблицы больше этого значения, оно будет помечено для усечения, если innodb_undo_log_truncate установлено.
-
Команда командной строки:
--innodb-max-undo-log-size=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
10485760
-
-
Диапазон:
10485760до18446744073709551615
innodb_merge_sort_block_size
- Описание: Размер блока в байтах, используемого для слияния сортировки при быстром создании индексов. Заменён в MariaDB 10.0/XtraDB 5.6 на innodb_sort_buffer_size.
-
Команда командной строки:
innodb-merge-sort-block-size=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1048576(1 МБ) -
Диапазон:
1048576(1 МБ) до1073741824(1 ГБ) - Удалено: MariaDB 10.0 — заменено на innodb_sort_buffer_size
innodb_mirrored_log_groups
- Описание: Не используется. Восстановлено как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB) для более лёгкого обновления.
- Устарело: MariaDB 10.0
- Удалено: MariaDB 10.2.2 — MariaDB 10.2.5
innodb_mtflush_threads
-
Описание: Устанавливает количество потоков, используемых в операциях многопоточной очистки. Для получения дополнительной информации см. Многопоточная очистка Fusion-io.
- Функция многопоточной очистки InnoDB была устаревшей в MariaDB 10.2.9 и удалена из MariaDB 10.3.2. В более поздних версиях MariaDB используйте переменную системы
innodb_page_cleanersвместо неё. - Для получения дополнительной информации см. Очистка страниц InnoDB: Очистка страниц с помощью многопоточных потоков очистки.
- Функция многопоточной очистки InnoDB была устаревшей в MariaDB 10.2.9 и удалена из MariaDB 10.3.2. В более поздних версиях MariaDB используйте переменную системы
-
Команда командной строки:
--innodb-mtflush-threads=# - Область действия: Глобально
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
8 -
Диапазон:
1до64 - Устарело: MariaDB 10.2.9
- Удалено: MariaDB 10.3.2
innodb_monitor_disable
- Описание: Отключает указанные счётчики в таблице INFORMATION_SCHEMA.INNODB_METRICS.
-
Команда командной строки:
--innodb-monitor-disable=string - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
string
innodb_monitor_enable
- Описание: Включает указанные счётчики в таблице INFORMATION_SCHEMA.INNODB_METRICS.
-
Команда командной строки:
--innodb-monitor-enable=string - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
string
innodb_monitor_reset
- Описание: Сбрасывает значение счётчика указанных счётчиков в таблице INFORMATION_SCHEMA.INNODB_METRICS на ноль.
-
Команда командной строки:
--innodb-monitor-reset=string - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
string
innodb_monitor_reset_all
- Описание: Сбрасывает все значения указанных счётчиков в таблице INFORMATION_SCHEMA.INNODB_METRICS на ноль.
-
Команда командной строки:
---innodb-monitor-reset-all=string - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
string
innodb_numa_interleave
- Описание: Использовать или не использовать политику NUMA interleave для выделения памяти буфера пула InnoDB. До MariaDB 10.2.4 требовалось, чтобы MariaDB компилировалась на системе Linux с поддержкой NUMA.
-
Команда командной строки:
innodb-numa-interleave={0|1} - Область действия: Глобально
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.2.23, MariaDB 10.3.14, MariaDB 10.4.4
innodb_old_blocks_pct
- Описание: Процент буфера пула буфера пула для использования в подсписке старых блоков.
-
Команда командной строки:
--innodb-old-blocks-pct=# - Область действия: Глобально
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
37 -
Диапазон:
5до95
innodb_old_blocks_time
- Описание: Время в миллисекундах, которое вставленный блок должен оставаться в старом подсписке после первого доступа, прежде чем его можно будет переместить в новый подсписок. '0' означает "нет задержки". Установка ненулевого значения может помочь предотвратить полные сканирования таблицы, засоряющие буферный пул. См. также буферный пул. См. также innodb_old_blocks_pct.
-
Команда:
--innodb-old-blocks-time=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
1000 -
Диапазон:
0до232-1
innodb_online_alter_log_max_size
- Описание: Максимальный размер временных файлов журнала во время онлайн DDL (изменения данных и структуры индексов). Временный файл журнала используется для каждой изменяемой таблицы или создаваемого индекса для хранения изменений данных в таблице во время процесса. Таблица расширяется на innodb_sort_buffer_size до предела, установленного этой переменной. Если этот предел превышен, операция онлайн DDL завершается неудачно, и все незавершенные изменения отменяются. Более низкое значение сокращает время блокировки таблицы в конце операции для применения всех изменений журнала, но также увеличивает вероятность неудачи изменений онлайн DDL.
-
Команда:
--innodb-online-alter-log-max-size=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
134217728 -
Диапазон:
65536до264-1
innodb_open_files
-
Описание: Максимальное количество открытых файлов .ibd, которые может одновременно иметь MariaDB. Применимо только к системам с несколькими XtraDB/InnoDB табличными пространствами и отделено от кэша таблиц и open_files_limit. По умолчанию, если innodb_file_per_table отключено, составляет 300 или значение table_open_cache, в зависимости от того, какое больше. Он также автоматически увеличится до значения по умолчанию, если установлено значение меньше
10. -
Команда:
--innodb-open-files=# - Область: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
autosized -
Диапазон:
10до4294967295
innodb_optimize_fulltext_only
-
Описание: При установке в
1(0- значение по умолчанию), OPTIMIZE TABLE будет обрабатывать только данные InnoDB FULLTEXT-индекс. Предназначено только для использования во время обслуживания индексов полнотекстового поиска. -
Команда:
--innodb-optimize-fulltext-only={0|1} - Область: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_page_cleaners
-
Описание: Количество потоков очистителей страниц. По умолчанию
4, но значение будет установлено в количество innodb_buffer_pool_instances, если оно меньше. Если установлено1, используется только один поток очистителя, как это было до MariaDB 10.2.1. Потоки очистителя удаляют грязные страницы из буферного пула, выполняя сброс списка и сброс по наименее недавно использованному (LRU) алгоритму. Устарело и игнорируется начиная с MariaDB 10.5.1, так как первоначальные причины разделения буферного пула в основном исчезли.- См. InnoDB Сброс страниц: Сброс страниц с помощью нескольких потоков очистителей страниц InnoDB для получения дополнительной информации.
-
Команда:
--innodb-page-cleaners=# - Область: Глобальная
- Динамический: Да (>= MariaDB 10.3.3), Нет (<= MariaDB 10.3.2)
-
Тип данных:
numeric -
Значение по умолчанию:
4(или установлено в innodb_buffer_pool_instances, если меньше) -
Диапазон:
1до64 - Устарело: MariaDB 10.5.1
- Удалено: MariaDB 10.6.0
innodb_page_size
-
Описание: Указывает размер страницы в байтах для всех InnoDB табличных пространств. По умолчанию,
16k, подходит для большинства случаев использования.- Меньший размер страницы InnoDB может быть эффективнее в ситуации с множеством небольших записей (OLTP) или с хранилищем SSD, которое обычно имеет меньшие размеры блоков.
- Больший размер страницы InnoDB может обеспечить больший максимальный размер строки.
- Размер страницы InnoDB может быть так же велик, как
64kдля таблиц, использующих следующие форматы строк: DYNAMIC, COMPACT и REDUNDANT. - Размер страницы InnoDB должен по-прежнему составлять
16kили меньше для таблиц, использующих формат строк COMPRESSED. - Значение этой системной переменной нельзя изменить после того, как
datadirбыл инициализирован. Размер страницы InnoDB устанавливается при запуске экземпляра MariaDB и остается постоянным после этого.
-
Команда:
--innodb-page-size=# - Область: Глобальная
- Динамический: Нет
-
Тип данных:
enumeration -
Значение по умолчанию:
16384 -
Допустимые значения:
4kили4096,8kили8192,16kили16384,32kи64k.
innodb_pass_corrupt_table
- Удалено: XtraDB 5.5 - переименовано в innodb_corrupt_table_action.
innodb_prefix_index_cluster_optimization
- Описание: Включить оптимизацию префикса, чтобы иногда избежать обращений к кластерному индексу. Устарело и игнорируется начиная с MariaDB 10.10, так как оптимизация теперь всегда включена.
-
Команда:
--innodb-prefix-index-cluster-optimization={0|1} - Область: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устарело: MariaDB 10.10.1
innodb_print_all_deadlocks
-
Описание: Если установлено в
1(0- значение по умолчанию), вся информация о тупиках транзакций XtraDB/InnoDB записывается в журнал ошибок. -
Команда:
--innodb-print-all-deadlocks={0|1} - Область: Глобальная
- Динамический: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_purge_batch_size
- Описание: Единицы записей журнала InnoDB redo log, которые будут вызывать операцию очистки. Вместе с innodb_purge_threads оказывает небольшое влияние на настройку.
-
Команда:
--innodb-purge-batch-size=# - Область: Глобальная
- Динамический: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
20 -
Диапазон:
1до5000
innodb_purge_rseg_truncate_frequency
- Описание: Частота, с которой удаляются записи отмены. По умолчанию установлено каждые 128 раз, уменьшение этого значения увеличивает частоту освобождения сегментов отмены. См. также innodb_undo_log_truncate.
-
Команда:
-- innodb-purge-rseg-truncate-frequency=# - Область: Глобальная
- Динамический: Да
-
Тип данных:
numeric -
Значение по умолчанию:
128 -
Диапазон:
1до128
innodb_purge_threads
-
Описание: Количество фоновых потоков, выделенных для операций очистки InnoDB. Диапазон значений — от
1до32. По меньшей мере один фоновый поток всегда используется начиная с MariaDB 10.0. Значение по умолчанию было увеличено с1до4в MariaDB 10.2.2. Установка значения больше 1 создаёт соответствующее количество отдельных потоков очистки. Это может повысить эффективность в некоторых случаях, таких как выполнение операций DML для многих таблиц. В MariaDB 5.5 доступные варианты были0и1. Если значение установлено в0, по умолчанию, очистка выполняется основным потоком. Если значение установлено в1, очистка выполняется в отдельном потоке, что может уменьшить конкуренцию. См. также innodb_purge_batch_size. -
Команда:
--innodb-purge-threads=# - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
-
4
-
-
Диапазон: от
1до32
innodb_random_read_ahead
-
Описание: Изначально, функция случайного предварительного чтения всегда использовалась в качестве оптимизации, но была удалена в MariaDB 5.5.
innodb_random_read_aheadпозволяет её повторно включить, если значение установлено в1(0) по умолчанию. -
Команда:
--innodb-random-read-ahead={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_read_ahead
-
Описание: Если значение установлено в
linear, по умолчанию, XtraDB/InnoDB будет автоматически извлекать оставшиеся страницы, если достаточно страниц в том же блоке, которые могут быть обработаны последовательно. Если значение установлено вnone, предварительное чтение отключено.randomбыло удалено и теперь игнорируется, в то время какbothустанавливает значения как дляlinear, так и дляrandom. Также см. innodb_read_ahead_threshold для более тонкого управления предварительным чтением. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено на innodb_random_read_ahead из MySQL 5.6. -
Команда:
innodb-read-ahead=value - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
linear -
Допустимые значения:
none,random,linear,both - Удалено: MariaDB 10.0/XtraDB 5.6 — заменено на innodb_random_read_ahead из MySQL 5.6
innodb_read_ahead_threshold
- Описание: Минимальное количество страниц, которое XtraDB/InnoDB должно прочитать из блока размером 64 страницы перед запуском асинхронного чтения следующего блока.
-
Команда:
--innodb-read-ahead-threshold=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
56 -
Диапазон: от
0до64
innodb_read_io_threads
- Описание: Количество потоков ввода-вывода для чтения InnoDB. В редких случаях может потребоваться уменьшить это значение по умолчанию на системах Linux, на которых работают несколько серверов MariaDB, чтобы избежать превышения системных ограничений.
-
Команда:
--innodb-read-io-threads=# - Область действия: Глобальная
- Динамическое: Да (>= MariaDB 10.11), Нет (<= MariaDB 10.10)
-
Тип данных:
numeric -
Значение по умолчанию:
4 -
Диапазон: от
1до64
innodb_read_only
-
Описание: Если значение установлено в
1(0по умолчанию), сервер будет в режиме только для чтения. Для использования в распределённых приложениях, хранилищах данных или средах только для чтения. -
Команда:
--innodb-read-only={0|1} - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_read_only_compressed
- Описание: Если установлено (по умолчанию до MariaDB 10.6.6), таблицы с ROW_FORMAT=COMPRESSED будут в режиме только для чтения. Это задумывалось как первый шаг к удалению поддержки записи и устареванию этой функции, но этот план был отменён.
-
Команда:
--innodb-read-only-compressed,--skip-innodb-read-only-compressed - Область действия:
- Динамическое:
-
Тип данных:
boolean -
Значение по умолчанию:
OFF(>= MariaDB 10.6.6),ON(<= MariaDB 10.6.5) - Введено: MariaDB 10.6.0
innodb_recovery_stats
-
Описание: Если значение установлено в
1(0по умолчанию) и при запуске необходимо восстановление, сервер запишет подробные статистические данные восстановления в журнал ошибок в конце процесса восстановления. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. - Команда: Нет
- Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.0
innodb_recovery_update_relay_log
-
Описание: Если значение установлено в
1(0по умолчанию), файл информации репликации будет перезаписан при восстановлении после сбоя, если информация отличается от записи InnoDB. Не следует использовать, если реплицируются несколько типов движков хранения. Ранее называлосьinnodb_overwrite_relay_log_info. Удалено в MariaDB 10.0/XtraDB 5.6 и заменено наrelay-log-recoveryиз MySQL 5.6. -
Команда:
innodb-recovery-update-relay-log={0|1} - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF -
Удалено: MariaDB 10.0 — заменено на
relay-log-recoveryиз MySQL 5.6
innodb_replication_delay
- Описание: Время в миллисекундах, на которое сервер-реплика должен задерживать поток репликации, если достигнута максимальная параллельность innodb_thread_concurrency. Устарело и игнорируется начиная с MariaDB 10.5.5.
-
Команда:
--innodb-replication-delay=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон: от
0до4294967295 - Устарело: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_rollback_on_timeout
- Описание: InnoDB обычно откатывает последнюю инструкцию транзакции, которая истекла по времени (см. innodb_lock_wait_timeout). Если innodb_rollback_on_timeout установлено в 1 (0 по умолчанию), InnoDB откатит всю транзакцию. До MariaDB 5.5 откат всей транзакции был по умолчанию.
-
Команда:
--innodb-rollback-on-timeout - Область действия: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
0
innodb_rollback_segments
- Описание: Указывает количество сегментов отката, которые XtraDB/InnoDB будет использовать в рамках транзакции (см. журнал отката). Устарело и заменено на innodb_undo_logs в MariaDB 10.0.
-
Команда:
--innodb-rollback-segments=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
128 -
Диапазон: от
1до128 - Устарело: MariaDB 10.0
- Удалено: MariaDB 10.5.0
innodb_safe_truncate
-
Описание: Используйте безопасную для резервного копирования реализацию TRUNCATE TABLE и безопасные при сбоях операции переименования внутри InnoDB. Это несовместимо с инструментами горячего резервного копирования, кроме Mariabackup. Пользователи, которым необходимо использовать такие инструменты, могут установить это значение в
OFF. -
Командная строка:
--innodb-safe-truncate={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Введено: MariaDB 10.2.19
- Удалено: MariaDB 10.3.0
innodb_scrub_log
- Описание: Включить очистку журнала перезаписи InnoDB. См. Очистка данных. Устарело и игнорируется начиная с MariaDB 10.5.2, так как никогда действительно не работало (MDEV-13019 и MDEV-18370). Если старое содержимое журнала должно храниться в секрете, то включение innodb_encrypt_log или установка меньшего значения innodb_log_file_size может помочь.
-
Командная строка:
--innodb-scrub-log - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_scrub_log_interval
- Описание: Используется с Очисткой данных только в 10.1.3 — заменён в 10.1.4 на innodb_scrub_log_speed. Интервал очистки журнала перезаписи InnoDB в миллисекундах.
-
Командная строка:
--innodb-scrub-log-interval=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
56 -
Диапазон:
0до50000 - Введено: MariaDB 10.1.3
- Удалено: MariaDB 10.1.4
innodb_scrub_log_speed
- Описание: Скорость очистки журнала перезаписи InnoDB в байтах/сек. См. Очистка данных. Устарело и игнорируется начиная с MariaDB 10.5.2.
-
Командная строка:
--innodb-scrub-log-speed=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
256 -
Диапазон:
1до50000 - Устарело: MariaDB 10.5.2
- Удалено: MariaDB 10.6.0
innodb_sched_priority_cleaner
-
Описание: Установка приоритета планирования потоков для потоков очистки и менеджеров наименее используемых (LRU). Диапазон от
0до39соответствует в обратном порядке значениям Linux nice-20до19. Таким образом,0— это наименьший приоритет (значение Linux nice19) и39— это наивысший приоритет (значение Linux nice-20). Только XtraDB. Добавлено в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB), чтобы упростить обновления. -
Командная строка:
innodb-sched-priority-cleaner=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
19 -
Диапазон:
0до39 - Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_show_locks_held
- Описание: Указывает количество удерживаемых блокировок для каждой транзакции InnoDB, которые будут отображаться в выводе SHOW ENGINE INNODB STATUS. Только XtraDB. Добавлено в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Командная строка:
innodb-show-locks-held=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
10 -
Диапазон:
0до1000 - Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_show_verbose_locks
-
Описание: Если установлено в
1, и innodb_status_output_locks также включено, используется стандартное поведение InnoDB, и заблокированные записи будут отображаться в выводе SHOW ENGINE INNODB STATUS. Если установлено в0, значение по умолчанию, отображается только общая информация о блокировке. Только XtraDB. Добавлено в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB), чтобы упростить обновления. -
Командная строка:
innodb-show-verbose-locks=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до1 - Устарело: MariaDB 10.2.6
- Удалено: MariaDB 10.3.0
innodb_simulate_comp_failures
- Описание: Моделирование сбоев сжатия. Используется для проверки устойчивости к случайным сбоям сжатия. Только XtraDB.
- Командная строка: Нет
- Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до99
innodb_sort_buffer_size
- Описание: Размер буферов сортировки, используемых для сортировки данных при создании индекса InnoDB, а также объем, на который расширяется временный файл журнала при онлайн-операциях DDL для записи одновременных записей. Чем больше значение, тем меньше фаз слияния требуется между буферами при сортировке. Когда CREATE TABLE или ALTER TABLE создаёт новый индекс, выделяются три буфера такого размера, а также указатели на строки в буфере.
-
Командная строка:
--innodb-sort-buffer-size=# - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1048576(1М) -
Диапазон:
65536до67108864
innodb_spin_wait_delay
-
Описание: Максимальная задержка (не строго соответствующая единице времени) между опросами блокировки с ожиданием. Значение по умолчанию изменено с
6на4в MariaDB 10.3.5, так как это подтвердило наилучшую пропускную способность по OLTP-обновлению индекса и тестам чтения-записи на Intel Broadwell (2/20/40) и ARM (1/46/46). -
Командная строка:
--innodb-spin-wait-delay=# - Область: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
4(>= MariaDB 10.3.5),6(<= MariaDB 10.3.4) -
Диапазон:
0до4294967295
innodb_stats_auto_recalc
-
Описание: Если установлено в
1(значение по умолчанию), постоянные статистические данные автоматически пересчитываются, когда таблица изменяется существенно (более чем на 10% строк). Воздействует на таблицы, созданные или изменённые с STATS_PERSISTENT=1 (см. СОЗДАНИЕ ТАБЛИЦЫ), или когда innodb_stats_persistent включён. innodb_stats_persistent_sample_pages определяет объём данных для выборки при перерасчёте. См. Постоянные статистические данные InnoDB. -
Командная строка:
--innodb-stats-auto-recalc={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_stats_auto_update
-
Описание: Если установлено в
0(1— значение по умолчанию), статистика индексов не будет автоматически рассчитываться, кроме случаев выполнения ANALYZE TABLE или при первом открытии таблицы. Заменено на innodb_stats_auto_recalc в MariaDB 10.0/XtraDB 5.6. - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
1 - Удалено: MariaDB 10.0 — заменено на innodb_stats_auto_recalc.
innodb_stats_include_delete_marked
- Описание: Включает удалённые записи при расчёте постоянной статистики.
- Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_stats_method
-
Описание: Определяет, как обрабатываются NULL-значения для целей статистики индексов InnoDB.
-
nulls_equal: По умолчанию, все NULL-значения индекса обрабатываются как единая группа. Обычно это нормально, но если у вас много NULL-значений, средний размер группы может быть завышен, и оптимизатор может пропустить использование индекса для ref-доступа, когда это было бы полезно. -
nulls_unequal: Принимается обратный подход кnulls_equal, где каждый NULL образует собственную группу из одного элемента. Соответственно, средний размер группы снижается, и оптимизатор может использовать индекс для ref-доступа, когда это нецелесообразно. -
nulls_ignored: NULL-значения полностью игнорируются при расчёте групп индексов. - См. также Статистику индексов, aria_stats_method и myisam_stats_method.
-
-
Командная строка:
--innodb-stats-method=name - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
enumeration -
Значение по умолчанию:
nulls_equal -
Допустимые значения:
nulls_equal,nulls_unequal,nulls_ignored
innodb_stats_modified_counter
-
Описание: Количество изменённых строк перед расчётом новой статистики. Если установлено в
0, по умолчанию, используются текущие ограничения. -
Командная строка:
--innodb-stats-modified-counter=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до18446744073709551615
innodb_stats_on_metadata
-
Описание: Если установлено в
1, по умолчанию, XtraDB/InnoDB обновляет статистику при обращении к таблицам INFORMATION_SCHEMA.TABLES или INFORMATION_SCHEMA.STATISTICS, а также при выполнении метаданных, таких как SHOW INDEX или SHOW TABLE STATUS. Если установлено в0, статистика не обновляется в эти моменты, что может сократить время доступа к большим схемам, а также сделать планы выполнения более стабильными. -
Командная строка:
--innodb-stats-on-metadata - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_stats_persistent
- Описание: ANALYZE TABLE создаёт статистику индексов, и это значение определяет, будут ли они храниться на диске или необходимо пересчитываться чаще, например, при перезапуске сервера. Эта информация хранится для каждой таблицы и может быть установлена с помощью предложения STATS_PERSISTENT при создании или изменении таблиц (см. СОЗДАНИЕ ТАБЛИЦЫ). См. Постоянные статистические данные InnoDB.
-
Командная строка:
--innodb-stats-persistent={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_stats_persistent_sample_pages
- Описание: Количество страниц индекса, взятых для выборки при оценке кардинальности и статистики для индексированных столбцов. Увеличение этого значения повысит точность статистики индекса, но потребует больше ресурсов ввода/вывода при выполнении ANALYZE TABLE. См. Постоянные статистические данные InnoDB.
-
Командная строка:
--innodb-stats-persistent-sample-pages=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
20
innodb_stats_sample_pages
-
Описание: Предоставляет контроль над статистикой распределения индексов, определяя количество страниц индекса для выборки. Более высокие значения увеличивают ввод/вывод на диск, но, особенно для больших таблиц, дают более точную статистику и, следовательно, более эффективное использование оптимизатора запросов. Значения ниже, чем значение по умолчанию, не рекомендуются, так как статистика может быть неточной.
- Если innodb_stats_traditional включён, то точно указанное количество страниц, настроенных этим системным параметром, будет выбрано для статистики.
- Если innodb_stats_traditional выключен, то количество страниц для выборки статистики вычисляется с использованием логарифмического алгоритма, поэтому точное значение может меняться в зависимости от размера таблицы. Это означает, что для больших таблиц может быть использовано больше выборок.
- Если включена постоянная статистика, то вместо этого применяется системная переменная innodb_stats_persistent_sample_pages. Постоянная статистика включается с помощью системной переменной innodb_stats_persistent.
- Эта системная переменная устарела. Следует использовать системную переменную innodb_stats_transient_sample_pages.
-
Командная строка:
--innodb-stats-sample-pages=# - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
numeric -
Значение по умолчанию:
8 -
Диапазон:
1до264-1 - Устарело: MariaDB 10.0
- Удалено: MariaDB 10.5.0
innodb_stats_traditional
-
Описание: Этот системный параметр влияет на то, как определяется количество страниц для выборки транзитной статистики, в частности, как используется innodb_stats_transient_sample_pages# .
- Если innodb_stats_traditional включён, то точно указанное количество страниц, настроенных этим системным параметром, будет выбрано для статистики.
- Если innodb_stats_traditional выключен, то количество страниц для выборки статистики вычисляется с использованием логарифмического алгоритма, поэтому точное значение может меняться в зависимости от размера таблицы. Это означает, что для больших таблиц может быть использовано больше выборок.
- Этот системный параметр не влияет на расчёт постоянной статистики.
-
Командная строка:
--innodb-stats-traditional={0|1} - Область действия: Глобальная
- Динамическое: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_stats_transient_sample_pages
-
Описание: Предоставляет контроль над статистикой распределения индексов, определяя количество страниц индекса для выборки. Более высокие значения приводят к большему вводу-выводу на диск, но, особенно для больших таблиц, обеспечивают более точную статистику и, следовательно, более эффективное использование оптимизатора запросов. Значения ниже значения по умолчанию не рекомендуются, так как статистика может быть довольно неточной.
- Если
innodb_stats_traditionalвключено, то для статистики будет выбрано точное количество страниц, настроенных этой системной переменной. - Если
innodb_stats_traditionalотключено, то количество страниц для выборки статистики рассчитывается с использованием логарифмического алгоритма, поэтому точное число может меняться в зависимости от размера таблицы. Это означает, что для больших таблиц может использоваться больше выборок. - Если постоянная статистика включена, то вместо неё применяется системная переменная
innodb_stats_persistent_sample_pages. Постоянная статистика включена с помощью системной переменнойinnodb_stats_persistent.
- Если
-
Командная строка:
--innodb-stats-transient-sample-pages=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
8 -
Диапазон:
1до264-1
innodb_stats_update_need_lock
-
Описание: Установка значения на
0(1— значение по умолчанию) может помочь уменьшить конкуренцию за&dict_operation_lock, но также отключает опцию Data_free в SHOW TABLE STATUS. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
1 - Удалено: MariaDB 10.0/XtraDB 5.6
innodb_status_output
- Описание: Включить вывод монитора InnoDB в журнал ошибок.
-
Командная строка:
--innodb-status-output={0|1} - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_status_output_locks
- Описание: Включить вывод монитора блокировок InnoDB в журнал ошибок и SHOW ENGINE INNODB STATUS. Также требуется innodb_status_output=ON для включения вывода в журнал ошибок.
-
Командная строка:
--innodb-status-output-locks={0|1} - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_strict_mode
-
Описание: Если установлено в значение
1(значение по умолчанию), InnoDB будет возвращать ошибки вместо предупреждений в определенных случаях, аналогично строгому режиму SQL. Подробнее см. InnoDB Строгий Режим. -
Командная строка:
--innodb-strict-mode={0|1} - Область действия: Глобальная, Сессия
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_support_xa
-
Описание: Если установлено в
1(значение по умолчанию), поддерживаются XA транзакции. Поддержка XA гарантирует, что данные записываются в бинарный журнал в том же порядке, что и в фактической базе данных, что критически важно для репликации и восстановления после аварии, но сопряжено с небольшой потерей производительности. Если ваша база данных настроена так, чтобы разрешать изменение данных только одному потоку (например, на реплике репликации, где только поток репликации выполняет запись), то безопасно выключить эту опцию. Удалено в MariaDB 10.3, XA-транзакции всегда поддерживаются. -
Командная строка:
--innodb-support-xa - Область действия: Глобальная, Сессия
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревшее: MariaDB 10.2
- Удалено: MariaDB 10.3.0
innodb_sync_array_size
-
Описание: По умолчанию
1, может быть увеличено для разделения внутренней координации потоков, что даёт более высокую конкуретность при большом количестве ожидающих потоков. -
Командная строка:
--innodb-sync-array-size=# - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
1до1024 - Удалено: MariaDB 10.6.0
innodb_sync_spin_loops
- Описание: Количество раз, которое поток ожидает освобождения мьютекса XtraDB/InnoDB, прежде чем приостановить выполнение.
-
Командная строка:
--innodb-sync-spin-loops=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
30 -
Диапазон:
0до4294967295
innodb_table_locks
-
Описание: Если autocommit установлено в
0(1- значение по умолчанию), установка innodb_table_locks в1, значение по умолчанию, заставит XtraDB/InnoDB заблокировать таблицу внутри при выполнении LOCK TABLE. -
Командная строка:
--innodb-table-locks - Область действия: Глобальная, Сессия
- Динамическая: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_thread_concurrency
-
Описание: Когда достигнуто это число потоков (исключая потоки, ожидающие блокировок), XtraDB/InnoDB помещает новые потоки в состояние ожидания в очереди «первый пришёл — первый обслужен» для выполнения, чтобы ограничить количество одновременно работающих потоков. Установка значения
0, значение по умолчанию, позволяет работать нужному количеству потоков. Рекомендуемое значение — дважды количество процессоров плюс количество дисков. Устарело и игнорируется начиная с MariaDB 10.5.5. -
Командная строка:
--innodb-thread-concurrency=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
0 -
Диапазон:
0до1000 - Устаревшее: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_thread_concurrency_timer_based
-
Описание: Если установлено в
1, обработка конкурентности потоков будет выполняться в режиме, основанном на таймере без блокировки, а не в режиме по умолчанию, основанном на мьютексе. Зависит от наличия встроенных атомных операций. Эта переменная Percona XtraDB не была перенесена в XtraDB 5.6. -
Командная строка:
innodb-thread-concurrency-timer-based={0|1} - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Удалено: MariaDB 10.0/XtraDB 5.6
innodb_thread_sleep_delay
-
Описание: Время в микросекундах, которое потоки InnoDB спят, прежде чем присоединиться к очереди. Установка в
0отключает ожидание. Устарело и игнорируется начиная с MariaDB 10.5.5. -
Командная строка:
--innodb-thread-sleep-delay=# - Область действия: Глобальная
- Динамическая: Да
-
Тип данных:
numeric -
Значение по умолчанию:
-
0(>= MariaDB 10.5.5.) -
10000(<= MariaDB 10.5.4)
-
-
Диапазон:
0до1000000 - Устаревшее: MariaDB 10.5.5
- Удалено: MariaDB 10.6.0
innodb_temp_data_file_path
- Описание:
-
Командная строка:
--innodb-temp-data-file-path=path - Область действия: Глобальная
- Динамическая: Нет
-
Тип данных:
string -
Значение по умолчанию:
ibtmp1:12M:autoextend
innodb_tmpdir
- Описание: Разрешает установить альтернативное расположение для временных файлов, не являющихся файлами табличного пространства. Если не установлено (по умолчанию), файлы будут созданы в стандартном расположении tmpdir.
-
Командная строка:
--innodb-tmpdir=path - Область действия: Глобально
- Динамично: Да
-
Тип данных:
string - Значение по умолчанию: Пусто
innodb_track_changed_pages
- Описание: Для более быстрого инкрементного резервного копирования с Xtrabackup, XtraDB отслеживает страницы с внесёнными изменениями в соответствии с XtraDB журналом переигрывания и записывает информацию в специальные файлы с битовой картой изменённых страниц. Эта константа используется для управления этой функцией. См. также innodb_max_changed_pages и innodb_max_bitmap_file_size. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Командная строка:
innodb-track-changed-pages={0|1} - Область действия: Глобально
- Динамично: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устарело: MariaDB 10.2.6
innodb_track_redo_log_now
- Описание: Доступно только в отладочных сборках. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления.
-
Командная строка:
innodb-track-redo-log-now={0|1} - Область действия: Глобально
- Динамично: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устарело: MariaDB 10.2.6
innodb_undo_directory
-
Описание: Путь к каталогу (относительный или абсолютный), используемому InnoDB для создания отдельных табличных пространств для журналов отмены.
.(значение по умолчанию до 10.2.2) оставляет журналы отмены в том же каталоге, что и другие файлы журналов. Начиная с MariaDB 10.2.2, значение по умолчанию — NULL, и если путь не указан, табличные пространства отмены будут созданы в каталоге, определённом переменной datadir. Используется совместно с innodb_undo_logs и innodb_undo_tablespaces. Журналы отмены лучше всего размещать на отдельном накопителе. -
Командная строка:
--innodb-undo-directory=name - Область действия: Глобально
- Динамично: Нет
-
Тип данных:
string - Значение по умолчанию: NULL
innodb_undo_log_truncate
- Описание: При включении, табличные пространства отмены, которые больше, чем innodb_max_undo_log_size, отмечаются для обрезки. См. также innodb_purge_rseg_truncate_frequency.
-
Командная строка:
--innodb-undo-log-truncate[={0|1}] - Область действия: Глобально
- Динамично: Да
-
Тип данных:
boolean -
Значение по умолчанию:
OFF
innodb_undo_logs
-
Описание: Указывает количество сегментов отката, которые XtraDB/InnoDB будет использовать в транзакции (или количество активных журналов отмены). По умолчанию установлено максимальное значение,
128, его можно уменьшить, чтобы избежать выделения ненужных сегментов отката. Посмотрите переменную состояния Innodb_available_undo_logs для получения количества доступных журналов отмены. См. также innodb_undo_directory и innodb_undo_tablespaces. Заменило innodb_rollback_segments в MariaDB 10.0. Таблица Information Schema XTRADB_RSEG содержит информацию о сегментах отката XtraDB. Устаревшая и игнорируемая в MariaDB 10.5.0, так как всегда имеет смысл использовать максимальное количество сегментов отката. -
Командная строка:
--innodb-undo-logs=# - Область действия: Глобально
- Динамично: Да
-
Тип данных:
numeric -
Значение по умолчанию:
128 -
Диапазон:
0до128 - Устарело: MariaDB 10.5.0
- Удалино: MariaDB 10.6.0
innodb_undo_tablespaces
-
Описание: Количество файлов табличных пространств, используемых для разделения журналов отмены. По умолчанию (0), все журналы отмены являются частью системного табличного пространства, которое содержит на один больше журналов отмены, чем значение
innodb_undo_tablespaces. Значение 1 сбрасывается до 0, так как для отдельных табличных пространств требуется 2 или более. При увеличении размера журналов отмены разделение их по нескольким табличным пространствам уменьшит размер каждого отдельного табличного пространства. До MariaDB 10.11.1 необходимо задавать значение до инициализации InnoDB, иначе MariaDB не запустится с сообщением об ошибкеInnoDB did not find the expected number of undo tablespaces. Файлы создаются в каталоге, указанном в innodb_undo_directory, и называютсяundoN, где N — целое число. Размер табличного пространства отмены по умолчанию составляет 10 МБ. innodb_undo_logs должно иметь ненулевое значение для того, чтобыinnodb_undo_tablespacesвступило в силу. -
Командная строка:
--innodb-undo-tablespaces=# - Область действия: Глобально
- Динамично: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
3(>= MariaDB 11.0),0(<= MariaDB 10.11) -
Диапазон:
0, или2до95
innodb_use_atomic_writes
- Описание: Реализует атомарные записи на поддерживаемых устройствах SSD. См. поддержку атомарных записей для других переменных, которые влияют при установке этого значения.
-
Командная строка:
innodb-use-atomic-writes={0|1} - Область действия: Глобально
- Динамично: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_use_fallocate
-
Описание: Быстрое предварительное выделение файлов с использованием функций операционной системы. На системах POSIX используется системный вызов posix_fallocate.
- Автоматически устанавливается в
1когда innodb_use_atomic_writes установлено - см. поддержку атомарных записей FusionIO DirectFS. - См. InnoDB Сжатие страниц: экономия места на диске с помощью разреженных файлов для получения дополнительной информации.
- Автоматически устанавливается в
-
Командная строка:
innodb-use-fallocate={0|1} - Область действия: Глобально
- Динамично: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF -
Устарело: MariaDB 10.2.5 (обрабатывается так, как если бы
ON) - Удалино: MariaDB 10.3.0
innodb_use_global_flush_log_at_trx_commit
-
Описание: Определяет, может ли пользователь установить переменную innodb_flush_log_at_trx_commit. Если установлено в
1, пользователь не может сбросить значение с помощью команды SET, в то время как если установлено в1, пользователь может сбросить значениеinnodb_flush_log_at_trx_commit. Только XtraDB. Добавлена как устаревшая и игнорируемая опция в MariaDB 10.2.6 (InnoDB используется по умолчанию вместо XtraDB), чтобы упростить обновления. -
Командная строка:
innodb-use-global-flush-log-at-trx_commit={0|1} - Область действия: Глобально
- Динамично: Да
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устарело: MariaDB 10.2.6
- Удалино: MariaDB 10.3.0
innodb_use_mtflush
-
Описание: Включить или выключить многопоточные операции Flush. Дополнительную информацию см. в Fusion.
- Функция многопоточного кеширования InnoDB была устаревшей в MariaDB 10.2.9 и удалена в MariaDB 10.3.2. В более поздних версиях MariaDB используйте системную переменную
innodb_page_cleaners. - Для получения дополнительной информации см. InnoDB Page Flushing: Page Flushing with Multi-threaded Flush Threads.
- Функция многопоточного кеширования InnoDB была устаревшей в MariaDB 10.2.9 и удалена в MariaDB 10.3.2. В более поздних версиях MariaDB используйте системную переменную
-
Команда:
--innodb-use-mtflush={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревший: MariaDB 10.2.9
- Удален: MariaDB 10.3.2
innodb_use_native_aio
-
Описание: Только для систем Linux, указывает, использовать ли подсистему асинхронного ввода-вывода Linux. По умолчанию установлено значение
ON, но оно может быть изменено на0при запуске, если InnoDB обнаружит проблему, или начиная с MariaDB 10.6.5/MariaDB 10.7.1, если обнаружен ядро Linux 5.11 - 5.15, чтобы избежать ошибки/несовместимости io-uring (MDEV-26674). MariaDB 10.6.6/MariaDB 10.7.2 и более поздние версии также рассматривают 5.15.3+ как исправленное ядро и по умолчанию устанавливают значениеON. Для того чтобы по-настоящему воспользоваться этим параметром, файлы должны открываться в режиме O_DIRECT (innodb_flush_method=O_DIRECT, по умолчанию с MariaDB 10.6), чтобы обойти кэш файловой системы. Таким образом, чтение и запись могут передаваться с помощью DMA, используя буферный пул InnoDB напрямую, и не требуется использовать циклы процессора для копирования данных. -
Команда:
--innodb-use-native-aio={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON
innodb_use_purge_thread
- Описание: Обычно в InnoDB данные, измененные транзакцией, записываются в область отката, чтобы обеспечить согласованность чтения, и освобождаются при завершении транзакции. Многочисленные или крупные транзакции могут значительно увеличить размер табличного пространства, что снижает производительность. Этот параметр, представленный в XtraDB 5.1 и удаленный в 5.5, позволяет нескольким потокам выполнять очистку, что приводит к более медленной, но гораздо более стабильной производительности.
-
Команда:
--innodb-use-purge-thread=# - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
numeric -
Значение по умолчанию:
1 -
Диапазон:
0до32 - Удален: XtraDB 5.5
innodb_use_stacktrace
-
Описание: Если установлено
ON(OFFпо умолчанию), при запуске сервера InnoDB устанавливается обработчик сигналов для SIGUSR2. При обнаружении длительного ожидания семафора в sync/sync0array.c, ожидающему потоку и потоку, который получил RW-замок, отправляется сигнал SIGUSR2. Для обоих потоков генерируется полный трассировка стека, а также, если возможно. Только XtraDB. Добавлено в качестве устаревшего и игнорируемого параметра в MariaDB 10.2.6 (который использует InnoDB по умолчанию вместо XtraDB), чтобы упростить обновления. -
Команда:
--innodb-use-stacktrace={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
OFF - Устаревший: MariaDB 10.2.6
- Удален: MariaDB 10.3.0
innodb_use_sys_malloc
-
Описание: Если установлено значение
1, по умолчанию, XtraDB/InnoDB будет использовать выделение памяти операционной системы. Если установлено значение0, он будет использовать свой собственный. Устарел в MariaDB 10.0 и удален в MariaDB 10.2 вместе с внутренним выделением памяти InnoDB. -
Команда:
--innodb-use-sys-malloc={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревший: MariaDB 10.0
- Удален: MariaDB 10.2.2
innodb_use_sys_stats_table
-
Описание: Если установлено значение
1(0по умолчанию), XtraDB будет использовать системную таблицу SYS_STATS для дополнительных статистических данных по индексам таблиц. Когда таблица открывается впервые, статистика загружается из SYS_STATS вместо выборки страниц индексов. Статистика предназначена для поддержания только при выполнении команды ANALYZE TABLE. Заменено на статистику оптимизатора MySQL 5.6. -
Команда:
innodb-use-sys-stats-table={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
0 - Удален: MariaDB 10.0/XtraDB 5.6
innodb_use_trim
-
Описание: Использовать trim для освобождения места сжатых блоков.
- Для получения дополнительной информации см. InnoDB Page Compression: Saving Storage Space with Sparse Files.
-
Команда:
--innodb-use-trim={0|1} - Область: Глобальная
- Динамическое: Нет
-
Тип данных:
boolean -
Значение по умолчанию:
ON - Устаревший: MariaDB 10.2.4
- Удален: MariaDB 10.3.0
innodb_version
- Описание: Номер версии InnoDB. Начиная с MariaDB 10.3.7, так как реализация InnoDB в MariaDB отличается от MySQL, сообщается версия MariaDB. Например, версия InnoDB, сообщённая в MariaDB 10.1 (которая основана на MySQL 5.6), включала шифрование и сжатие страниц переменной длины до того, как MySQL 5.7 их представил. MariaDB 10.2 (на основе MySQL 5.7) представила постоянный AUTO_INCREMENT (MDEV-6076) в релизе GA до MySQL 8.0. MariaDB 10.3 (на основе MySQL 5.7) представила мгновенный ADD COLUMN (MDEV-11369) до MySQL.
- Область: Глобальная
- Динамическое: Нет
-
Тип данных:
string
innodb_write_io_threads
- Описание: Количество потоков ввода-вывода для записи в InnoDB. В редких случаях на системах Linux с несколькими серверами MariaDB может потребоваться уменьшить это значение по умолчанию, чтобы избежать превышения системных ограничений.
-
Команда:
--innodb-write-io-threads=# - Область: Глобальная
- Динамическое: Да (>= MariaDB 10.11), Нет (<= MariaDB 10.10)
-
Тип данных:
numeric -
Значение по умолчанию:
4 -
Диапазон:
1до64
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проходит предварительную проверку MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают точку зрения MariaDB или любой другой стороны.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/xtradbinnodb-server-system-variables/