Spec-Zone.ru › MariaDB

Формат файлов InnoDB

До версии MariaDB 10.3 движок хранения InnoDB поддерживал два разных формата файлов.

Настройка формата файла таблицы

В MariaDB 10.2 и ранее, формат файлов по умолчанию для таблиц InnoDB можно было выбрать, задав переменную innodb_file_format.

В MariaDB 10.2.1 и ранее, формат файла по умолчанию былAntelope. В MariaDB 10.2.2 и более поздних версиях, формат файла по умолчанию был Barracuda и Antelope устарел.

Пространство таблицы таблицы помечено самым низким форматом файла InnoDB, поддерживающим формат строк таблицы. Таким образом, даже если формат файла Barracuda включён, таблицы, использующие формат строк COMPACT или REDUNDANT, будут помечены форматом файла Antelope в таблице information_schema.INNODB_SYS_TABLES.

Поддерживаемые форматы файлов

Движок хранения InnoDB поддерживает два разных формата файлов:

  • Antelope
  • Barracuda

Антилопа

В MariaDB 10.2.1 и ранее, формат файла по умолчанию был Antelope. В MariaDB 10.2.2 и более поздних версиях, формат файла Antelope устарел.

Antelope — это оригинальный формат файла InnoDB. Он поддерживает форматы строк COMPACT и REDUNDANT, но не поддерживает форматы строк DYNAMIC или COMPRESSED.

Барракуда

В MariaDB 10.1 и ранее, формат файла Barracuda поддерживался только если переменная системы innodb_file_per_table была установлена в значение ON. В MariaDB 10.2.2 и более поздних версиях, формат файла по умолчанию — Barracuda и Antelope устарел.

Barracuda — это новый формат файла InnoDB. Он поддерживает форматы строк COMPACT, REDUNDANT, DYNAMIC и COMPRESSED. Таблицы с большими столбцами BLOB или TEXT, в частности, могут извлечь выгоду из динамического формата строк.

Будущие форматы

InnoDB может использовать новые форматы файлов в будущем. Каждый формат будет иметь идентификатор от 0 до 25 и имя. Имена уже определены и являются именами животных, перечисленными в алфавитном порядке: Антилопа, Барракуда, Гепард, Дракон, Лось, Лиса, Газель, Шершень, Импала, Ягуар, Кенгуру, Леопард, Лось, Наутилус, Оцелот, Дюгонь, Перепел, Кролик, Акула, Тигр, Еж, Змея, Китовая, Ксифопс, Як и Зебра.

Проверка формата файла таблицы

Для просмотра формата файла, используемого таблицей, можно запросить таблицу information_schema.INNODB_SYS_TABLES.

Пространство таблицы таблицы помечено самым низким форматом файла InnoDB, поддерживающим формат строк таблицы. Таким образом, даже если формат файла Barracuda включён, таблицы, использующие формат строк COMPACT или REDUNDANT, будут помечены форматом файла Antelope в таблице information_schema.INNODB_SYS_TABLES.

Совместимость

Каждое пространство таблиц помечается идентификатором самого последнего формата файла, используемого одной из его таблиц. Все версии InnoDB могут читать таблицы, использующие более старый формат файла. Однако они не могут читать таблицы более новых форматов. По этой причине каждый раз, когда InnoDB открывает таблицу, она проверяет формат пространства таблиц и возвращает ошибку, если используется более новый формат.

Эту проверку можно пропустить, используя переменную innodb_file_format_check. Обратите внимание, что если InnoDB попытается восстановить таблицу в неизвестном формате, таблица будет повреждена! Это происходит при перезапуске, если innodb_file_format_check отключен и сервер упал или был закрыт с быстрой остановкой.

Чтобы понизить формат таблицы с Барракуды до Антилопы, можно установить ROW_FORMAT таблицы на значение, поддерживаемое Антилопой, с помощью оператора ALTER TABLE. Это пересоздаст индексы.

Формат Антилопы можно использовать, чтобы убедиться, что таблицы работают на серверах MariaDB и MySQL, которые старше 5.5.

См. также

  • Форматы хранения InnoDB
Содержимое, воспроизведенное на этом сайте, является собственностью его соответствующих владельцев, и это содержимое не проходит предварительную проверку 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/innodb-file-format/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API