Read Replicas — Complete Guide
Read Replicas — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of MySQL Tutorial on Toolliyo Academy.
On this page
MySQL Tutorial · Lesson 77 of 100
Read Replicas
Basics ✓ → Advanced
Advanced · 2 — Production · ~10 min · MySQL — Advanced MySQL
What is this?
Read replicas are MySQL copies serving SELECT traffic only. Apps route analytics, exports, and search to replica connection string; writes stay on primary.
Why should you care?
Black Friday product browse hammers catalog — 80% reads go to two replicas while primary handles checkout writes.
See it live — copy this example
Run in MySQL Workbench or the mysql CLI.
-- App config concept (two URLs):
-- WRITE: mysql://primary.dataflow.internal/DataFlow
-- READ: mysql://replica.dataflow.internal/DataFlow
SELECT @@hostname AS serving_host, COUNT(*) AS products
FROM products;
What happened?
- Running on replica returns replica hostname.
- COUNT on products avoids write load on primary.
- Stale reads possible if replication lag — acceptable for catalog browse, not for balance after transfer.
Practice next
- Create read-only user for replica.
- Point Workbench read connection to replica endpoint.
- Compare @@hostname primary vs replica.
- After INSERT on primary, SELECT on replica — observe delay.
- Weighted pool: 2 read replicas + 1 primary write.
Remember
Replicas scale read traffic. Lag means eventually consistent reads. Route reports and listings to replica.
DataFlow catalog API
GET /products uses replica; POST /orders uses primary only.
Outcome: Primary CPU headroom for transactions.
Interview prep for this lesson
Practice these questions aloud after reading—each links to a full structured answer.
Sign in to ask a question or upvote helpful answers.
No questions yet — be the first to ask!