Internal supports the latest versions of MySQL 5.6, 5.7, and 8.

How to connect

  • Display Name: Give your data source a name for use within Internal.
  • Host: The hostname or IP address of your data source.
  • Port: Port to connect to. By default, this is prefilled with standard values (MySQL:3306).
  • Username: Credentials for this data source.
  • Password: Credentials for this data source.
  • Database: The name of the database (this must match the actual name of your MySQL database).



To connect with Internal, your data source must be publicly accessible and configured to accept connections from Internal’s IP addresses.

What happens when you connect

When you connect MySQL to Internal, we'll generate the following for you automatically:

  1. A list, insert, update, and delete function for each table in the database (if the connecting user account has these privileges). List functions read data from your tables and allow you to display that data in components - think of these as prebuilt SQL queries, so you don't have to write queries for everything.



Functions will not be generated if no primary keys are found in the connected database.

Custom Functions

In some cases, you may want to create a view that combines data from various tables or elevates nested JSON fields to top-level attributes. To accomplish this, create a custom SQL Resource (a.k.a. SQL Query). This includes Raw SQL Queries and Raw Exec action types. To enable custom operations that write directly to your database (e.g. bulk actions), create a custom Function.

Filtering and Sorting

While Internal enables filtering and sorting on all columns, we recommend indexing columns on large tables to improve performance. Supported operators include =, !=, <, <=",">, >=, IN, ILIKE for all data types except geometry, point, linestring, polygon, multipoint, multilinestring, multipolygon, geomcollection, and json. Only the = and IN operators are supported for the latter. </,>

Specifying Trusted Server Root Certificates

One can specify custom trusted server root certificates for specific data sources - Cassandra, HTTP, MongoDB, MySQL, PostgreSQL.

  1. While setting up a new data source, ensure "require SSL" is selected
  2. In the righthand configuration panel, click the "Upload" button and select your certificate file
  1. Add the rest of the connection details and submit the form
  2. Test your DB connection by using it in a function in a Space

The parsed certificates completely replace the default system trusted certificates.