For years I have worked on some servers with Ubuntu + MySQL.
Lately, the databases have become incredibly slow. Everything, including restoring databases from a dump. We are talking here about rather small databases (Web CMS), in the 10-20 MB range when in SQL dump form.
I believe this started happening when I have upgraded from Ubuntu 18 LTS to Ubuntu 20 LTS, which also upgrades MySQL to version 8 (from 5.x).
I have tried to remove and purge MySQL, and then reinstall it from scratch, just in case the problem originated from some ancient setting, but nothing changed. Still horribly slow.
I have tried mysqlcheck on the imported data; it found no problem and made no difference.
The big surprise was when I tried replacing MySQL (8) with MariaDB (10.3) and then I restored the same databases from a dump. Result: operations (both restoring and using the data) are more or less twenty times faster.
Now, I understand that MariaDB is generally considered a bit faster than MySQL, but twenty times seems a bit excessive. Also, MySQL used to be much faster. Anyone has any idea on what could be happening here?
SHOW CREATE TABLE
. From those we can probably discover what Optimization is being performed differently in the two products. And they we might have a way to speed up the query in both. I know of one 'easy to explain' case: MariaDB eliminates unnecessaryJOIN
, while MySQL acts as if they are important.