Integrations

Google Cloud SQL for MySQL to BigQuery, in real time

Replicate Google Cloud SQL for MySQL into BigQuery in real time. Turn on point-in-time recovery to enable the binary log, authorize our network, and changes stream within seconds.

Setup time
About 15 minutes
Restart needed
Possibly: enabling point-in-time recovery may restart the instance.
Binary log retention
Binary logs are kept for the point-in-time recovery window (default 7 days).

Set up Google Cloud SQL for change data capture

The in-app guide shows each of these with exact clicks and copy-paste commands, then tests the connection.

  1. 1

    Turn on point-in-time recovery

    In Cloud SQL, the binary log is enabled by turning on point-in-time recovery in the instance's backup settings. Enabling it may restart the instance.

  2. 2

    Check the row image

    Cloud SQL logs in ROW format. Make sure the binlog_row_image flag is not set to minimal (the default, full, is correct).

  3. 3

    Make sure the instance has a public IP

    Under Connections → Networking, enable a public IP if the instance only has a private one.

  4. 4

    Authorize our network

    Add our IP addresses under Authorized networks.

  5. 5

    Connect BigQuery and pick tables

    Upload a service-account key, choose the tables, and start. Existing rows are copied first; after that every insert, update and delete arrives within seconds. See BigQuery setup.

What you get in BigQuery

  • An up-to-date copy of each table with the same primary key, optionally partitioned by date.
  • A change history of every insert, update and delete in a separate dataset, kept as long as you choose.
  • New columns added automatically, and per-table freshness you can monitor.

Google Cloud SQL questions

Isn't Google Cloud Datastream simpler on Cloud SQL?

Datastream is a good fit if you replicate several database engines inside Google Cloud. See our comparison for pricing and feature differences.

Can I use a private IP?

Private connectivity is on our roadmap. Today the instance needs a public IP with our addresses authorized.

Your MySQL data in BigQuery today

Free during early access. Set it up yourself in about 15 minutes, or we'll do it with you on a call.