Database connector

MySQL

Turn every insert, update and delete in MySQL into a typed event in Tessel. Use it to start workflows, look up related rows and write results back to your tables.

Connect MySQL
Connect MySQL
See setup steps
See setup steps

Database

Category

CDC

Sync mode

p95 420 ms

Latency

7 min

Setup time

What it can do

Triggers · 3
  • Row insertedCDC
  • Row updatedCDC
  • Row deletedCDC
Actions · 4
  • Run a read queryRead
  • Insert a rowWrite
  • Update rowsWrite
  • Call a stored procedureWrite

Overview

The MySQL connector reads the binary log the same way a replica does, so workflows react to changes without polling your tables. Each change arrives as a typed event with the column types attached, and every event shows up in the trace of the run it started.

Teams use it to open a Zendesk ticket when an order fails, to push new signups into HubSpot and to post a Slack alert when a refund row is written outside business hours.

Supported versions

  • MySQL 5.7 and 8.0 to 8.4, plus MariaDB 10.5 and later

  • Amazon RDS and Aurora MySQL, Google Cloud SQL and Azure Database for MySQL

  • Connections over TLS, with optional SSH tunnel or AWS PrivateLink

How binlog replication works

Tessel registers as a replica with its own server ID and reads row events from the binlog. It needs row-based logging with full row images, so each event carries the before and after values. Tessel tracks its position by GTID when GTIDs are on, and by file and offset when they are not.

SET GLOBAL binlog_format = 'ROW';
SET GLOBAL binlog_row_image = 'FULL';

CREATE USER 'tessel'@'%' IDENTIFIED BY '<password>';
GRANT REPLICATION SLAVE, REPLICATION CLIENT, SELECT
  ON *.* TO 'tessel'@'%';
SET GLOBAL binlog_format = 'ROW';
SET GLOBAL binlog_row_image = 'FULL';

CREATE USER 'tessel'@'%' IDENTIFIED BY '<password>';
GRANT REPLICATION SLAVE, REPLICATION CLIENT, SELECT
  ON *.* TO 'tessel'@'%';
SET GLOBAL binlog_format = 'ROW';
SET GLOBAL binlog_row_image = 'FULL';

CREATE USER 'tessel'@'%' IDENTIFIED BY '<password>';
GRANT REPLICATION SLAVE, REPLICATION CLIENT, SELECT
  ON *.* TO 'tessel'@'%';

Binlog retention

Keep at least 24 hours of binlog so a paused connector can catch up. On RDS, set binlog retention hours with mysql.rds_set_configuration. If Tessel falls behind the oldest file, it takes a fresh snapshot and tells you in the trace.

Permissions needed

Create a dedicated user for Tessel. It needs replication grants and read access to the tables you watch. Write grants are only required if a workflow inserts, updates or calls a procedure.

  • REPLICATION SLAVE and REPLICATION CLIENT, granted globally

  • SELECT on every table you watch

  • INSERT, UPDATE and EXECUTE only where you write back

Setup

Five steps. About seven minutes.

Most of the time goes into turning on row-based logging. Tessel checks the binlog settings before you pick tables.

  1. Turn on row-based binlog with full row imagesMySQL2 min
  2. Create a tessel user with replication grantsMySQL2 min
  3. Allow Tessel's static IPs for your regionNetwork1 min
  4. Paste the connection details and pick tablesTessel2 min
  5. Insert a test row and watch the event arriveVerify420 ms

Your binlog, in a workflow today.

Connect MySQL on the free plan. Up to three builders and 10,000 runs a month, no card required.

Connect MySQL
Connect MySQL
All integrations
All integrations

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

One email a month. Only what shipped.

A1

Product

C1

Layouts

D1

Company

E1

Template

F1

All systems operational
fra41 ms
iad38 ms
sin52 ms

C2

Elsewhere

XLinkedInGitHubYouTube

E2

Move across the wordmark168 blocks · iso 30°

Create a free website with Framer, the website builder loved by startups, designers and agencies.