Плагины сжатия
Плагины сжатия были добавлены в предварительной версии MariaDB 10.7.0.
Различные движки хранения MariaDB, такие как InnoDB, RocksDB, Mroonga, могут использовать различные библиотеки сжатия.
Перед MariaDB 10.7.0 каждая отдельная библиотека должна была компилироваться, чтобы быть доступной для использования, что приводило к множеству зависимостей runtime/rpm/deb, большинство из которых пользователи никогда не использовали.
Начиная с MariaDB 10.7.0, пять дополнительных библиотек сжатия MariaDB (кроме стандартной zlib) доступны в виде плагинов (обратите внимание, что они влияют только на InnoDB и Mroonga; RocksDB по-прежнему использует алгоритмы сжатия из собственной библиотеки):
- bzip2
- lzma
- lz4
- lzo
- snappy
Установка
Для использования их просто нужно установить как плагин:
INSTALL SONAME 'provider_lz4';
Затем алгоритм сжатия можно использовать, например, в сжатии InnoDB:
SET GLOBAL innodb_compression_algorithm = lz4;
Обновление
При обновлении с версии без плагинов сжатия, если использовался алгоритм сжатия, отличный от zlib, эти таблицы будут нечитаемыми до тех пор, пока не будет установлена соответствующая библиотека сжатия. Необходимо запустить mariadb-upgrade. Опция --force (для запуска mariadb-check) или mariadb-check сама по себе укажут на любые проблемы со сжатием, например:
Warning : MariaDB tried to use the LZMA compression, but its provider plugin is not loaded Error : Table 'test.t' doesn't exist in engine status : Operation failed
или
Error : Table test/t is compressed with lzma, which is not currently loaded. Please load the lzma provider plugin to open the table error : Corrupt
В этом случае следует установить соответствующий плагин сжатия и перезапустить сервер.
См. также
- 10.7 предварительная версия функции: Плагины поставщиков сжатия (блог mariadb.org)
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/compression-plugins/