High Availability
This page is part of MariaDB's Documentation.
The parent of this page is: Use Cases
Topics on this page:
Overview
Enterprise applications often require the ability to run continuously for extended periods of time with little or no user-facing downtime.
High Availability Solutions
MariaDB database products support several different high availability solutions.
MariaDB Replication
MariaDB Replication supports high availability.
Replica servers replicate data from a primary server asynchronously or semi-synchronously using binary logs. Upon primary server failure, a replica server can be promoted to a primary server.
Galera Cluster
supports high availability.
Cluster nodes replicate data using certification-based replication implemented by the Galera 3 or Galera 4 plugin, depending on the version of MariaDB. Upon node failure, the cluster automatically recovers, as long as remaining nodes have quorum.
MariaDB Enterprise ColumnStore
MariaDB Enterprise ColumnStore supports high availability in multi-node deployments.
ColumnStore nodes share data using shared storage. Upon node failure, shared storage can still be accessed by remaining nodes.
Automatic Failover with MaxScale
MariaDB MaxScale augments HA solutions, providing additional automatic failover capabilities. The specific capabilities depend on the high availability solution that is used:
HA Solution | Description |
---|
MaxScale's Read/Write Split Router (readwritesplit) includes several configurable features to minimize the impact of failover on client connections:
Feature | Description |
Replaces back-end server connections to a failed server with connections to a different server, rather than closing the connections. | |
Ensures the execution of prior transactions before additional queries are routed to different Servers, instead of closing the connection and requiring the application to roll the transaction back and retry. | |
Ensures all servers handling traffic for a connection have the same session system variables, user-defined variables, etc. | |
Allows MaxScale to route incomplete queries to a different replica rather than returning an error or closing the client connection. | |
Allows MaxScale to delay and retry write queries received after a primary fails and before automatic failover completes, rather than returning an error or closing the client connection |
Deploy MariaDB Enterprise Server with HA
Choose an HA solution to deploy for MariaDB Enterprise Server:
HA Solution | ES Deployment |
|
|
Deploy MariaDB Community Server with HA
Choose an HA solution to deploy for MariaDB Community Server:
HA Solution | ES Deployment | MaxScale Deployment |
|