For security reasons, Trino built by Minimus includes only 5 of the 54 plugins in the public image:Documentation Index
Fetch the complete documentation index at: https://docs.minimus.io/llms.txt
Use this file to discover all available pages before exploring further.
- Only plugins that operate entirely within the Trino JVM or use the local filesystem are included by default in the Minimus Trino image.
- Plugins that require external databases, cloud SDKs, or network endpoints to function are excluded by default.
trino-plugin-cassandra, trino-plugin-hive, etc. If you’re working with a Trino-FIPS image, install the Trino FIPS compatible plugins, for example trino-fips-plugin-cassandra.
Install Plugins with Creator
The standard way to install Trino plugins when working with a Minimus Trino image is to create a private image using Creator.- Go to Creator
- Select the Minimus Trino image as your starter image
- Select the relevant packages. They’re named
trino-plugin-{name}. - Finish configuring your private image, adding env variables, certificates, etc. If you’re using a Trino-FIPS starter image, install the FIPS plugins (their name takes the format:
trino-fips-plugin-{plugin-name}). - Save and build the private image. Creator will build your custom Trino image in all available versions with the plugins of your choice and maintain it for you.
Example: Configuring the MySQL Catalog for Trino
The following example uses a private Trino image with the MySQL connector plugin baked in. To query a MySQL database through Trino, you need to register it as a catalog. This tutorial walks through the setup using Docker. We will deploy a custom Trino image alongside a MySQL instance and run a federated query across MySQL and Trino’s built-in sample data.Prerequisites
- Docker installed and running
Step 1: Start MySQL
Create a Docker network and start a MySQL container with a sample database:Step 2: Write the Catalog Properties
Create a file calledmysql.properties in your working directory:
mysql matches the container name on the Docker network.
Step 3: Start Trino
Use Creator to build a private image with the packagetrino-plugin-mysql and name it trino-mysql.
Run the Trino-MySQL image and mount the catalog file (replace the {id} with your own tenant ID before running the command):
mysql in the output alongside the default catalogs (system, tpch, etc.).
Step 4: Query MySQL through Trino
List the tables in theshop database:
Step 5: Run a Federated Query
One of Trino’s strengths is querying across multiple data sources in a single statement. Join the MySQL table with the built-intpch sample data:
tpch catalog, all in one pass.
Clean Up
Remove the containers and network:Catalog Reference
How catalogs work
Trino uses catalog properties files to register data sources. Each.properties file placed in /etc/trino/catalog/ becomes a catalog with the filename as its name (e.g., mysql.properties registers a catalog called mysql).
Queries follow a three-part naming convention: catalog.schema.table.
Mounting catalogs in Kubernetes
When deploying with the Trino Helm chart, add catalogs through theadditionalCatalogs field in your values.yaml:
Connection properties
| Property | Description |
|---|---|
connector.name | Always mysql for the MySQL connector |
connection-url | JDBC URL in the form jdbc:mysql://host:port |
connection-user | MySQL user for Trino to authenticate as |
connection-password | Password for the MySQL user |