Session
Schedule FOSDEM 2020
MySQL, MariaDB and Friends

ALTER TABLE improvements in MariaDB Server

Optimized or instantaneous schema changes, including ADD/DROP COLUMN
H.2214
Marko Mäkelä
ALTER TABLE in MySQL used to copy the table contents row by row. We can do much better; in the best case, allow instantaneous schema changes, even for nontrivial changes, such as ADD COLUMN…AFTER and DROP COLUMN. This talk describes how ALTER TABLE has been improved over the years for the InnoDB storage engine in MySQL 5.1, 5.5, 5.6, 5.7, and MariaDB Server 10.2, 10.3, 10.4, 10.5, mostly by the presenter.

The talk enumerates different classes of ALTER TABLE operations:

operations not involving other than metadata

operations that can be performed instantly by introducing a backward-compatible data file format change and 'faking' the operation (ADD or DROP COLUMN)

operations that can avoid rebuilding a table

operations that must rebuild the table

variations of the previous 2 classes that allow concurrent modifications to the table

We also show how ALTER TABLE can be executed concurrently on multiple nodes in statement-based replication. Finally, we cover some theoretical limits of what kind of ALTER TABLE operations can be supported without rebuilding the table, by introducing an optional validation step and on-demand conversion of records in previous schema versions of the table.

Additional information

Type devroom

More sessions

2/1/20
MySQL, MariaDB and Friends
H.2214
Welcome to the FOSDEM MySQL, MariaDB & Friends Devroom 2020
2/1/20
MySQL, MariaDB and Friends
Peter Zaitsev
H.2214
MySQL 8 and MariaDB 10.4 are the latest Major versions for MySQL and MariaDB. While MariaDB started by being slightly different MySQL variant, now it has grown into very much different database platforms which grows more different from every release. In this presentation, we will look into the differences between MySQL and MariaDB in the core areas such as SQL features, query optimizations, replication, storage engines, and security as well as discuss unique features and capabilities MySQL 8 and ...
2/1/20
MySQL, MariaDB and Friends
Alkin Tezuysal
H.2214
In this talk, we'll walk through RocksDB technology and look into areas where MyRocks is a good fit by comparison to other engines such as InnoDB. We will go over internals, benchmarks, and tuning of MyRocks engine. We also aim to explore the benefits of using MyRocks within the MySQL ecosystem. Attendees will be able to conclude with the latest development of tools and integration within MySQL.
2/1/20
MySQL, MariaDB and Friends
Sveta Smirnova
H.2214
It is common knowledge that built-in asynchronous master-master (active-active) replication is not safe. I remember times when the official MySQL User Reference Manual stated that such an installation is not recommended for production use. Some experts repeat this claim even now. While this statement is generally true, I worked with thousands of shops that successfully avoided asynchronous replication limitations in active-active setups. In this talk, I will show how they did it, demonstrate ...
2/1/20
MySQL, MariaDB and Friends
Jean-François Gagné
H.2214
Have you ever needed to get some additional write throughput from MySQL ? If yes, you probably found that setting sync_binlog to 0 (and trx_commit to 2) gives you an extra performance boost. As all such easy optimisation, it comes at a cost. This talk explains how this tuning works, presents its consequences and makes recommendations to avoid them. This will bring us to the details of how MySQL commits transactions and how those are replicated to slaves. Come to this talk to learn how to get the ...
2/1/20
MySQL, MariaDB and Friends
Hrvoje Matijakovic
H.2214
MariaDB/MySQL/Percona Server provide some features in this space, but currently there isn't one product that covers all the needs (at least not available as FOSS). This talk will provide an overview of Data-at-Rest-Encryption features in MySQL, MariaDB and Percona Server for MySQL, their availability across versions, and status (experimental/GA).
2/1/20
MySQL, MariaDB and Friends
Nick Vyzas
H.2214
ProxySQL, the high performance, high availability, protocol-aware proxy for MySQL is now GA in version 2.0. This version introduces several new features, like causal reads using GTID, better support for AWS Aurora, native support for Galera Cluster, LDAP authentication and SSL for client connections. This session provides an overview of the most important new features.