During our SQL optimisation training courses, I always stress the need of understanding how databases run SQL queries internally. Which is easier and more intuitive than you'd think, anyway. But if you overlook this aspect, there is always a risk of sticking to simple...
Federico Razzoli
Announcing the Database Frontiers Virtual Conference!
Hey database enthusiasts! We're excited to announce Database Frontiers, a free virtual conference co-organised by Vettabase and BreachDirectory.com, happening on 15th October 2025. Database Frontiers is bringing together brilliant minds from across the database world...
MariaDB SEQUENCE: a Simple Approach to Synthetic Data
MariaDB SEQUENCE is a storage engine that generates a sequence of positive integer numbers. However, in this article I will show you that it's easy to use SEQUENCE to generate more complex sequences, that are not necessarily numeric. This is a very convenient way to...
Stored Procedures in MariaDB: Smarter, Easier and More Powerful
MariaDB supports stored procedures written in procedural SQL. Which essentially means "SQL with IF's and loops". Most DBMSs do the same, but every project supports different, incompatible syntaxes. MariaDB implemented Oracle's dialect, called PL/SQL. The base of the...
The EXPLAIN command and its variants in MariaDB and MySQL
For a very long time, the EXPLAIN command remained the same in the MariaDB and MySQL world. It was good enough in most cases, but the community welcomed the implementation of extensions and variants. However, MariaDB and MySQL improved it in different ways. So, if...
MariaDB and the GROUP BY error
Developers who are not familiar with SQL are often confused by MariaDB and MySQL's infamous GROUP BY error. From time to time, customers ask us to explain it, so it's time we publish an article on this topic. The error I'm talking about is the following: ERROR 1055...
Tuning MariaDB timeouts that affect applications
MariaDB has many configurable timeouts. Some of them can only be configured by DBAs (database administrators). Others can be adjusted by developers in the application code, though DBAs can configure defaults. MariaDB timeouts can be grouped in these categories:...
Dolt database: first impressions
You might know that we maintain a list of Awesome Innovative Databases on GitHub. At the time of this writing, the first item in the list of active projects is curious: Dolt. If English isn't your mother tongue, you might not know that it is a synonymous for idiot...
A Review of 2024 in the Database World
It's January 2025, so it's a good time to look back, and write my thoughts on the most important events and trends of 2024 in the database world. Would you like to share your thoughts? I'd be happy to read your comments. How does MariaDB compare to MySQL? MariaDB...
Optimise your database before scaling
Nowadays, there is a common misconceptions that we don't need to optimise the technologies we use, because we can just scale out or scale up. Whereas scaling out means to add one or more instances of a technology, and scaling up means to run the technology on better...