TokuDB Differences
TokuDB has been deprecated by its upstream maintainer. It is disabled from MariaDB 10.5 and has been removed in MariaDB 10.6 - MDEV-19780. We recommend MyRocks as a long-term migration path.
Because we, the MariaDB developers, don't want to add a lot of new features or big code changes to a stable release, not all TokuDB features are merged at once into MariaDB. Instead they are added in stages.
On this page we list all the known differences between the TokuDB from Tokutek and the default MariaDB version from MariaDB.org:
All MariaDB versions
TokuDB is not the default storage engine.
If you want to enable this, you have to start mysqld with:
--default-storage-engine=tokudb.
Auto increment for second part of a key behaves as documented (and as it does in MyISAM and other storage engines).
The DDL syntax is different. While binaries from Tokutek have the patched SQL parser, TokuDB in MariaDB uses the special Storage Engine API extension. Thus in Tokutek binaries you write
CLUSTERED KEY (columns)and, for example,ROW_FORMAT=TOKUDB_LZMA. And in MariaDB you writeKEY (columns) CLUSTERING=YESandCOMPRESSION=TOKUDB_LZMA.
Features missing in MariaDB 5.5
No online ALTER TABLE.
All alter table that changes data or indexes requires a table copy.
No online OPTIMIZE TABLE.
No
INSERT NOARorUPDATE NOARcommands.No gdb stack trace on sigsegv
IMPORTANT: the compression type does not default to the tokudb_row_format session variable as it does with Tokutek's builds. If
COMPRESSION=is not included inCREATE TABLEorALTER TABLE ENGINE=TokuDBthen the TokuDB table are uncompressed (before 5.5.37) or zlib-compressed (5.5.37 and later).
Features missing in MariaDB 10.0
MariaDB 10.0 (starting from 10.0.5) has online ALTER TABLE. So the features missing are:
No
INSERT NOARorUPDATE NOARcommands.We are working with Tokutek to improve this feature before adding it to MariaDB.
No online OPTIMIZE TABLE before 10.0.11 (r4199)
No gdb stack trace on sigsegv
Before 10.0.10 the compression type did not default to the tokudb_row_format session variable. If
COMPRESSION=was not included inCREATE TABLEorALTER TABLE ENGINE=TokuDBthen the TokuDB table was created uncompressed.
Version of the TokuDB plugin included on MariaDB
This is found on the TokuDB page.
This page is licensed: CC BY-SA / Gnu FDL
Last updated
Was this helpful?

