Skip to Content
MySQL 8 Cookbook
book

MySQL 8 Cookbook

by Karthik Appigatla
January 2018
Intermediate to advanced
446 pages
12h 57m
English
Packt Publishing
Content preview from MySQL 8 Cookbook

Enabling Compression for file_per_table Tables

  1. Make sure that file_per_table is enabled:
mysql> SET GLOBAL innodb_file_per_table=1;
  1. Specify the ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8 in the create statement:
mysql> CREATE TABLE compressed_table (id INT PRIMARY KEY) ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;Query OK, 0 rows affected (0.07 sec)

If the table already exists, you can execute ALTER:

mysql> ALTER TABLE event_history ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;Query OK, 0 rows affected (0.67 sec)Records: 0  Duplicates: 0  Warnings: 0

If you try to compress a table that is in the system tablespace, you will get an error:

mysql> ALTER TABLE employees ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;ERROR 1478 (HY000): InnoDB: Tablespace `innodb_system` ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

MySQL Cookbook

MySQL Cookbook

Paul DuBois
Advanced MySQL 8

Advanced MySQL 8

Eric Vanier, Birju Shah, Tejaswi Malepati

Publisher Resources

ISBN: 9781788395809Other