MariaDB [raw_data]> show global variables like 'innodb_file%'; +--------------------------+-----------+ | Variable_name | Value | +--------------------------+-----------+ | innodb_file_format | Barracuda | | innodb_file_format_check | ON | | innodb_file_format_max | Barracuda | | innodb_file_per_table | ON | +--------------------------+-----------+ 4 rows in set (0.00 sec) MariaDB [raw_data]> MariaDB [raw_data]> set global innodb_compression_algorithm=zlib; Query OK, 0 rows affected (0.00 sec) MariaDB [raw_data]> MariaDB [raw_data]> show global variables like '%compress%'; +-------------------------------------------+-------+ | Variable_name | Value | +-------------------------------------------+-------+ | have_compress | YES | | innodb_background_scrub_data_compressed | OFF | | innodb_background_scrub_data_uncompressed | OFF | | innodb_compression_algorithm | zlib | | innodb_compression_failure_threshold_pct | 5 | | innodb_compression_level | 6 | | innodb_compression_pad_pct_max | 50 | | innodb_immediate_scrub_data_uncompressed | OFF | | innodb_log_compressed_pages | OFF | | slave_compressed_protocol | OFF | +-------------------------------------------+-------+ 10 rows in set (0.00 sec) MariaDB [raw_data]> MariaDB [raw_data]> drop table if exists uncompressed_test_table; Query OK, 0 rows affected (0.01 sec) MariaDB [raw_data]> drop table if exists compressed_test_table; Query OK, 0 rows affected (0.01 sec) MariaDB [raw_data]> MariaDB [raw_data]> create table uncompressed_test_table (id int, random_data varchar(36), static_int int, static_varchar varchar(10)) engine=innodb; Query OK, 0 rows affected (0.04 sec) MariaDB [raw_data]> create table compressed_test_table (id int, random_data varchar(36), static_int int, static_varchar varchar(10)) engine=innodb page_compressed=1; Query OK, 0 rows affected (0.05 sec) MariaDB [raw_data]> MariaDB [raw_data]> insert into uncompressed_test_table(id, random_data, static_int, static_varchar) -> select id, random_data, 42, 'Hello' -> from ( -> with recursive data_generator(id, random_data) as ( -> select 1 as id, uuid() as random_data -> union all -> select id + 1, uuid() from data_generator where id < 1000000 -> ) -> select * from data_generator -> ) as a; Query OK, 1000000 rows affected (7.31 sec) Records: 1000000 Duplicates: 0 Warnings: 0 MariaDB [raw_data]> MariaDB [raw_data]> insert into compressed_test_table(id, random_data, static_int, static_varchar) -> select id, random_data, 42, 'Hello' -> from ( -> with recursive data_generator(id, random_data) as ( -> select 1 as id, uuid() as random_data -> union all -> select id + 1, uuid() from data_generator where id < 1000000 -> ) -> select * from data_generator -> ) as a; Query OK, 1000000 rows affected (7.53 sec) Records: 1000000 Duplicates: 0 Warnings: 0 MariaDB [raw_data]> MariaDB [raw_data]> commit; Query OK, 0 rows affected (0.00 sec) MariaDB [raw_data]> MariaDB [raw_data]> show global status like '%compress%'; +------------------------------------------+----------+ | Variable_name | Value | +------------------------------------------+----------+ | Compression | OFF | | Innodb_page_compression_saved | 66799616 | | Innodb_page_compression_trim_sect512 | 0 | | Innodb_page_compression_trim_sect1024 | 0 | | Innodb_page_compression_trim_sect2048 | 0 | | Innodb_page_compression_trim_sect4096 | 0 | | Innodb_page_compression_trim_sect8192 | 0 | | Innodb_page_compression_trim_sect16384 | 0 | | Innodb_page_compression_trim_sect32768 | 0 | | Innodb_num_pages_page_compressed | 5043 | | Innodb_num_page_compressed_trim_op | 0 | | Innodb_num_page_compressed_trim_op_saved | 0 | | Innodb_num_pages_page_decompressed | 4662 | | Innodb_num_pages_page_compression_error | 0 | | Innodb_defragment_compression_failures | 0 | +------------------------------------------+----------+ 15 rows in set (0.00 sec) MariaDB [raw_data]>