Tables Relations Statistics Query history Triggers Procedures Query data
MariaDB is an open-source database that started as a fork of MySQL, offering enhanced performance, security, and scalability. MariaDB maintains full compatibility with MySQL while introducing advanced features, such as improved storage engines and better query optimization. It’s highly flexible, supporting various storage formats and workloads, making it a reliable choice for developers looking to build scalable, secure applications.
Azimutt is making the first database explorer targeted for real world databases: large, heterogeneous and messy 😅 If you ever looked for an Entity-Relationship diagram tool (ERD) or drew your database schema on a sheet or whiteboard, Azimutt is made for you. But it goes well beyond that with database documentation, cross-database data exploration and even linter and monitoring of your database.
The MariaDB connector
is available on Azimutt GitHub repository (Open Source FTW 🤘), you can have a look at it and even suggest improvements.
In this case, you will be interested in the getSchema
function in
src/mariadb.ts
that makes everything necessary to extract the MariaDB schema.
Beyond the schema extraction, the MariaDB connector also infers:
- Polymorphic relations
- JSON column schema
How to use it #
The Gateway already integrates the MariaDB connector, you just have to follow these steps to use it:
- Launch your Gateway, if needed (for the local one use
npx azimutt@latest gateway
) - Create a new project or add a source to an existing one
- Fill your MariaDB database url (ex:
mariadb://user:pass@localhost:3306/your_db
)
Here are more details about how Azimutt secure your data and especially your database url.
If you don't have a MariaDB database right away, you can use Docker to create one with:
docker run --name mariadb_sample -p 3307:3306 -e MARIADB_ROOT_PASSWORD=mariadb -e MARIADB_USER=azimutt -e MARIADB_PASSWORD=azimutt -e MARIADB_DATABASE=mariadb_sample mariadb:latest
And use this sample script to populate it.
Here is what you can do with Azimutt: