MySQL Setup

Connect a MySQL database to Klairr with a read-only user.

This guide connects a MySQL database to Klairr with a dedicated read-only user. Klairr enforces session-level read-only and never has write access to your data.

Prerequisites

  • A reachable MySQL host (5.7+ or 8.0+)
  • A database admin who can create users and grant SELECT

Step 1: Create a read-only user

CREATE USER 'klairr_reader'@'%' IDENTIFIED BY '...';
GRANT SELECT ON analytics.* TO 'klairr_reader'@'%';
GRANT SHOW VIEW ON analytics.* TO 'klairr_reader'@'%';
FLUSH PRIVILEGES;

Klairr only needs SELECT and SHOW VIEW. We never request INSERT, UPDATE, DELETE, CREATE, DROP, ALTER, GRANT, or FILE.

Step 2: Add the connector

In Klairr, open Settings → Connectors → Add connector, pick MySQL, and enter:

FieldExample
Hostdb.example.com
Port3306
Databaseanalytics
Usernameklairr_reader
Password
TLSRequired (recommended)

Klairr forces SET SESSION TRANSACTION READ ONLY and attempts a no-op write probe at connect time. A read-only user rejects the probe; over-permissioned users are rejected by Klairr.

Notes

  • Multi-statement payloads are disabled in the driver. Klairr submits one SELECT at a time.
  • Row-count estimates come from information_schema.TABLES.TABLE_ROWS. They are stable enough for prompt grounding; not used for billing.
  • For self-hosted databases on a private network, contact support to enable a private-network exception.

Need help? Contact support · Start free