MariaDB
Introduction
Hasura enables you to connect to MariaDB databases to automatically build a rich GraphQL API based on your database schema.
At present, our MariaDB integration is available for testing in Hasura Cloud and Docker environments, where you can run Hasura GraphQL Engine and connect the MariaDB GraphQL Data Connector to it. For more information on GraphQL Data Connectors check out our blog post on the topic.
To get started with MariaDB:
- In Hasura Cloud, check out our Getting Started with MariaDB in Hasura Cloud guide
- In a Docker environment, check out our Getting Started with Docker guide
We have Helm charts available for deploying Hasura on Kubernetes. Check out
more information here and see the
enterprise-stack
here.
- Hasura GraphQL Engine
v2.24.0
onwards - Hasura supports most databases with standard implementations of MariaDB 10.6 and higher including: Amazon RDS, Amazon Aurora, Digital Ocean and SkySQL.
Hasura currently supports queries, mutations (INSERT, UPDATE, DELETE), table relationships, remote relationships and permissions on MariaDB.
Note that Hasura doesn't yet support the ability to modify the database schema for MariaDB, so the database you connect to should already contain tables and data. You should also ideally have access to it outside of Hasura to modify the schema.
Feature Support
Feature | MariaDB |
Remote Relationships | ✅ |
Views | ✅ |
Default Values | ✅ |
Queries
Feature | MariaDB |
Simple | ✅ |
Nested Object | ✅ |
Aggregation | ✅ |
Filter / Search | ✅ |
Sort | ✅ |
Distinct | ✅ |
Paginate | ✅ |
Multiple Arguments | ✅ |
Multiple Queries | ✅ |
Variables / Aliases / Fragments | ✅ |
Mutations
Feature | MariaDB |
Insert | ✅ |
Upsert | ❌ |
Update | ✅ |
Delete | ✅ |
Multiple per Request | ✅ |
Subscriptions
Feature | MariaDB |
Value of Field | ❌ |
Updates to Rows | ❌ |
Value of Derived Field | ❌ |
Streaming Subscriptions | ❌ |
Event Triggers
Feature | MariaDB |
INSERT | ❌ |
UPDATE | ❌ |
DELETE | ❌ |
MANUAL | ❌ |
Coming soon for MariaDB
Managing data with the Hasura Console
The Hasura Console is a web UI that allows you to manage your data and metadata. It is available at
http://localhost:8080/console
when you run Hasura locally, or from your project's Console endpoint when you use
Hasura Cloud.
The data-management features (such as creating tables) are available in the Data
tab. You can access your GraphQL API
in the API
tab and interact with it using the GraphiQL interface.
We recommend using your preferred MariaDB client instead. The Hasura Console is designed to be a tool for managing your GraphQL API, and not a full-fledged database management tool.
Resources
- Check out the Getting Started with Docker guide.