This is a read-only copy of the MariaDB Knowledgebase generated on 2025-05-01. For the latest, interactive version please visit https://mariadb.com/kb/.

Understanding MaxScale's Read/Write Split Router

Overview

MaxScale's Read/Write Split Router (readwritesplit) performs query-based load balancing. For each client connected to MaxScale, it opens up connections to multiple back-end database servers. When the client sends a write query to MaxScale, it routes the query to the connection opened with the primary server. When the client sends a read query to MaxScale, it routes the query to a connection opened with one of the replicas.

What Does the Read/Write Split Router Support?

The Read/Write Split Router (readwritesplit) supports:

When to Use the Read/Write Split Router?

The Read/Write Split Router (readwritesplit) allows you to:

  • Perform query-based load balancing.
  • Route client connections to multiple servers simultaneously.
  • Route write queries to primary and read queries to replicas.
  • Automatically reconnect clients to the new primary after failover or switchover.
  • Automatically replay transactions on the new primary after failover or switchover.
  • Automatically retry failed queries.
  • Enforce causal reads to avoid reading stale data caused by slave lag.

Deploying Read/Write Split Router

Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.