Skip to main content
Version: v2.x

MySQL

Introduction

Hasura enables you to connect to MySQL databases to automatically build a rich GraphQL API based on your database schema.

At present, our MySQL integration is available in Hasura Cloud and Docker environments, where you can run Hasura GraphQL Engine and connect the MySQL GraphQL Data Connector to it. For more information on GraphQL Data Connectors check out our blog post on the topic.

To get started with MySQL:

Using Kubernetes?

We have Helm charts available for deploying Hasura on Kubernetes. Check out more information here and see the enterprise-stack here.

Supported versions:
  1. Hasura GraphQL Engine v2.24.0 onwards
  2. Hasura supports most databases with standard implementations of MySQL 8.0 and higher including: Amazon RDS, Amazon Aurora, Google Cloud SQL and Digital Ocean.
  3. PlanetScale and certain other providers are unsupported.
Supported features

Hasura currently supports queries, mutations (INSERT, UPDATE, DELETE), table relationships, remote relationships and permissions on MySQL.

Note that Hasura doesn't yet support the ability to modify the database schema for MySQL, 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

FeatureMySQL
Remote Relationships
Views
Default Values

Queries

FeatureMySQL
Simple
Nested Object
Aggregation
Filter / Search
Sort
Distinct
Paginate
Multiple Arguments
Multiple Queries
Variables / Aliases / Fragments

Mutations

FeatureMySQL
Insert
Upsert
Update
Delete
Multiple per Request

Subscriptions

FeatureMySQL
Value of Field
Updates to Rows
Value of Derived Field
Streaming Subscriptions

Event Triggers

FeatureMySQL
INSERT
UPDATE
DELETE
MANUAL

Coming soon for MySQL

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.

Console support

We recommend using your preferred MySQL 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