My Journey to Connect MariaDB to MySQL Workbench

My boss asked me for an ER diagram from a schema saved in MariaDB.

Photo by Hilde Demeester on Unsplash

I happened to have to extract the Entity-Relationship diagram starting from the SQL schema. I usually use XAMPP to work in SQL so I told myself to try using the Designer tool provided by PhpMyAdmin. In truth, the result was not great. My database had over 20 tables and the Designer showed them all stuck on top of each other. Furthermore, the PhpMyAdmin Designer is a very basic tool, which does not allow you to automatically align the tables to make them more readable.

However, since my boss had asked me to produce this blessed ER diagram, and not have the desire to manually move the tables one by one in the graph, I thought about using MySQL Workbench. I remembered from distant reminiscences that MySQL Workbench provides a very powerful tool for the automatic conversion of SQL schemas into ER diagrams. The tool in question is called Reverse Engineering.

And here the problems arose. Getting MariaDB (database provided by new versions of XAMPP) to talk with MySQL Workbench was not a very simple operation. But I want to eventually make it.

And I want to tell you how I succeeded.

First of all, I had already pre-installed on my computer (a Mac OS) the latest version of XAMPP (7.3.33 at the time of writing this article), so I had no desire to downgrade to a previous version with MySQL DB installed, as suggested in some posts on StackOverflow.

First Attempt 😱

I downloaded the latest version of MySQL Workbench (8.0.27 at the time of writing this article) and installed it.

My first attempt was to have MariaDB speak directly to MySQL Workbench. I started MariaDB from the XAMPP control panel:

How to start MySQL Database in XAMPP
Image by Author

When the server is active, the light next to its name turns green. Then I started MySQL Workbench and clicked on the + sign to create a new connection:

Add a New Connection in MySQL Workbench
Image by Author

I added the connection parameters, but when I tried to press the Connect button, miserably the connection failed, as it required configuring SSL.

Second Attempt 😢

So I googled a bit and found how to configure SSL in Maria DB. I found a fairly complex procedure described in this article. But to tell the truth, I got a little scared. So I gave up.

Continue Reading on Towards Data Science