MySQL Source
MySQL is a relational database management system that stores and manages data.
2 minute read
About
MySQL is a relational database management system (RDBMS) that stores and manages data. It’s a popular choice for developers because of its reliability, performance, and ease of use.
Available Tools
MySQL Source Tools
| Tool Name | Description |
|---|---|
| mysql-execute-sql Tool | A "mysql-execute-sql" tool executes a SQL statement against a MySQL database. |
| mysql-get-query-plan Tool | A "mysql-get-query-plan" tool gets the execution plan for a SQL statement against a MySQL database. |
| mysql-list-active-queries Tool | A "mysql-list-active-queries" tool lists active queries in a MySQL database. |
| mysql-list-table-fragmentation Tool | A "mysql-list-table-fragmentation" tool lists top N fragemented tables in MySQL. |
| mysql-list-tables Tool | The "mysql-list-tables" tool lists schema information for all or specified tables in a MySQL database. |
| mysql-list-tables-missing-unique-indexes Tool | A "mysql-list-tables-missing-unique-indexes" tool lists tables that do not have primary or unique indices in a MySQL instance. |
| mysql-sql Tool | A "mysql-sql" tool executes a pre-defined SQL statement against a MySQL database. |
Requirements
Database User
This source only uses standard authentication. You will need to create a MySQL user to login to the database with.
Example
kind: sources
name: my-mysql-source
type: mysql
host: 127.0.0.1
port: 3306
database: my_db
user: ${USER_NAME}
password: ${PASSWORD}
# Optional TLS and other driver parameters. For example, enable preferred TLS:
# queryParams:
# tls: preferred
queryTimeout: 30s # Optional: query timeout duration
Tip
Use environment variable replacement with the format ${ENV_NAME} instead of hardcoding your secrets into the configuration file.
Reference
| field | type | required | description |
|---|---|---|---|
| type | string | true | Must be “mysql”. |
| host | string | true | IP address to connect to (e.g. “127.0.0.1”). |
| port | string | true | Port to connect to (e.g. “3306”). |
| database | string | true | Name of the MySQL database to connect to (e.g. “my_db”). |
| user | string | true | Name of the MySQL user to connect as (e.g. “my-mysql-user”). |
| password | string | true | Password of the MySQL user (e.g. “my-password”). |
| queryTimeout | string | false | Maximum time to wait for query execution (e.g. “30s”, “2m”). By default, no timeout is applied. |
| queryParams | map<string,string> | false | Arbitrary DSN parameters passed to the driver (e.g. tls: preferred, charset: utf8mb4). Useful for enabling TLS or other connection options. |
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.