Back to destination list
Official
MySQL
This destination plugin lets you sync data from a CloudQuery source to a MySQL database
Price
Free
Overview #
MySQL destination plugin
This destination plugin lets you sync data from a CloudQuery source to a MySQL database.
Supported database versions are >= 8.0.
If you need support for older versions, please contact us
MariaDB is not fully supported. If MariaDB compatibility is needed please upvote the open GitHub issue
Configuration #
MySQL destination plugin configuration reference
Example Configuration #
kind: destination
spec:
name: "mysql"
path: "cloudquery/mysql"
registry: "cloudquery"
version: "v5.2.16"
# Learn more about the configuration options at https://cql.ink/mysql_destination
spec:
connection_string: "user:password@/dbname"
# Optional parameters:
# batch_size: 1000 # 1K entries
# batch_size_bytes: 4194304 # 4 MiB
The MySQL destination utilizes batching, and supports
batch_size
and batch_size_bytes
.MySQL spec #
This is the (nested) spec used by the MySQL destination plugin.
connection_string
(string
) (required)Connection string to connect to the database. See the Go driver documentation for details."user:password@tcp(127.0.0.1:3306)/dbname"
connect with TCP"user:[email protected]:3306/dbname?charset=utf8mb4\u0026parseTime=True\u0026loc=Local"
connect and set character set, time parsing, and location"user:password@localhost:3306/dbname?timeout=30s\u0026readTimeout=1s\u0026writeTimeout=1s"
connect and set various timeouts"user:password@/dbname?loc=UTC\u0026allowNativePasswords=true\u0026tls=preferred"
connect and set location and native password allowance, and prefer TLS
batch_size
(integer
) (optional) (default:1000
)Maximum number of items that may be grouped together to be written in a single write.batch_size_bytes
(integer
) (optional) (default:4194304
(= 4 MiB))Maximum size of items that may be grouped together to be written in a single write.
Example #
MySQL destination plugin example
In this article we will show you a simple example of configuring MySQL destination plugin.
Prerequisites #
- Docker installed and running
Start MySQL locally #
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=test -e MYSQL_DATABASE=cloudquery -d mysql:latest
Configure MySQL destination plugin #
Once you've completed the steps from previous sections you should be able to connect to the local
cloudquery
MySQL database via the following connection string:root:password@/cloudquery
The (top level) spec section is described in the Destination Spec Reference.
The full configuration for the MySQL destination plugin should look like this:
kind: destination
spec:
name: "mysql"
path: "cloudquery/mysql"
registry: "cloudquery"
version: "v5.2.16"
spec:
connection_string: "root:password@/cloudquery"