Edit my.ini (of my.cnf if on Linux)
Comment out this row if it is InnoDb (and exists):
Make sure the default Innodb code delivered with Mysql is deactivated:
Follow the installation instructions on http://www.innodb.com/doc/innodb_plugin-1.0/innodb-plugin-installation.html
Add the following and restart mysql
It is now possible to create a new table that is compressed with innodb plugin:
CREATE TABLE MYTABLE (
TM timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
COMMAND varchar(20) DEFAULT NULL,
) ENGINE=innodb ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=4;
Don't forget to benchmark! The KEY_BLOCK_SIZE can be 1, 2, 4, 8 and 16. I got the best compression with 2 for my data. The other sizes were not so good. Some values even made the table bigger then uncompressed!
Overall conclusion: The Innodb plugin compression can be useful for some. But it might be useful to look into other compression techniques as well (for example compress data in a single TEXT/BLOB column on the client).
Post a Comment