📖 Scenario: You are managing a Redis database for a popular online store. To handle many customers reading product data without slowing down the main database, you want to set up read-only replicas. These replicas will copy data from the main Redis server but only allow reading, not writing.
🎯 Goal: Set up a Redis read-only replica configuration. You will create the main Redis server data, configure a replica to connect to it, and ensure the replica is read-only.
📋 What You'll Learn
Create a main Redis server data structure with some key-value pairs.
Configure a replica server to replicate from the main server.
Set the replica to be read-only.
Verify the replica configuration commands are correct.
💡 Why This Matters
🌍 Real World
Many websites use Redis replicas to handle high read traffic without slowing down the main database. This setup improves performance and reliability.
💼 Career
Understanding how to configure Redis replicas is important for roles like DevOps engineers, backend developers, and database administrators who manage scalable and reliable data systems.
Progress0 / 4 steps
1
Create main Redis server data
Create a Redis database with these exact key-value pairs: product:1 with value "Laptop", product:2 with value "Smartphone", and product:3 with value "Tablet". Use the Redis command SET for each key.
Redis
Hint
Use the SET command followed by the key and value in quotes.
2
Configure replica to connect to main server
Write the Redis command to configure a replica server to replicate from the main server at IP address 192.168.1.100 and port 6379. Use the exact command REPLICAOF 192.168.1.100 6379.
Redis
Hint
Use the REPLICAOF command with the main server's IP and port.
3
Set replica to read-only mode
Add the Redis configuration command to make sure the replica server is read-only. Use the exact command CONFIG SET replica-read-only yes.
Redis
Hint
Use CONFIG SET replica-read-only yes to make the replica read-only.
4
Complete replica setup
Add the Redis command to check the replica's role and confirm it is a replica. Use the exact command ROLE.
Redis
Hint
Use the ROLE command to verify the server's role.
Practice
(1/5)
1. What is the main purpose of a read-only replica in Redis?
easy
A. To handle write requests and update the master
B. To copy data from the master and handle read requests
C. To delete data from the master server
D. To act as a backup that does not sync data
Solution
Step 1: Understand the role of read-only replicas
Read-only replicas copy data from the master Redis server and serve read requests to reduce load on the master.
Step 2: Identify the correct purpose
They do not handle writes or delete data; their main job is to share read load.
Final Answer:
To copy data from the master and handle read requests -> Option B
Quick Check:
Read-only replicas = copy data + read requests [OK]
Hint: Replicas copy data and serve reads, not writes [OK]
Common Mistakes:
Thinking replicas handle writes
Believing replicas delete data
Assuming replicas do not sync data
2. Which Redis command is used to configure a server as a read-only replica of another?
easy
A. SETREPLICA <port>
B. COPYFROM <port>
C. SYNCREPLICA <port>
D. REPLICAOF <port>
Solution
Step 1: Recall the correct Redis command for replication
The command to set a Redis server as a replica is REPLICAOF followed by the master's IP and port.
Step 2: Verify other options
Other commands like SETREPLICA, COPYFROM, SYNCREPLICA do not exist in Redis.
Final Answer:
REPLICAOF <master-ip> <port> -> Option D
Quick Check:
Replica setup command = REPLICAOF [OK]
Hint: Use REPLICAOF to set or remove replication [OK]
Common Mistakes:
Using non-existent commands
Confusing REPLICAOF with SYNC commands
Misspelling the command name
3. Given a Redis replica configured with REPLICAOF 192.168.1.10 6379, what happens if you try to run SET key value on the replica?
medium
A. An error occurs because replicas are read-only
B. The key is set successfully on the replica
C. The command is forwarded to the master automatically
D. The replica disconnects from the master
Solution
Step 1: Understand replica behavior on write commands
Redis replicas are read-only and reject write commands like SET.
Step 2: Identify the outcome of running SET on a replica
Running SET on a replica causes an error because it cannot accept writes.
Final Answer:
An error occurs because replicas are read-only -> Option A
Quick Check:
Write commands on replicas = error [OK]
Hint: Replicas reject writes, only master accepts them [OK]
Common Mistakes:
Assuming writes succeed on replicas
Thinking commands auto-forward to master
Believing replica disconnects on write
4. You configured a Redis replica with REPLICAOF 192.168.1.10 6379 but it is not syncing data. What is the most likely cause?
medium
A. The replica command should be REPLICA instead of REPLICAOF
B. The replica server is running an older Redis version
C. The master IP or port is incorrect
D. The master server is set as a replica itself
Solution
Step 1: Check configuration details
If the replica is not syncing, the most common cause is incorrect master IP or port in the REPLICAOF command.
Step 2: Evaluate other options
Older Redis versions may cause issues but less likely; REPLICAOF is the correct command; master being a replica can cause sync issues but less common.
Final Answer:
The master IP or port is incorrect -> Option C
Quick Check:
Incorrect master address = no sync [OK]
Hint: Verify master IP and port carefully [OK]
Common Mistakes:
Using wrong command name
Ignoring IP/port typos
Assuming version mismatch is always cause
5. You want to temporarily stop replication on a Redis replica without shutting it down. Which command should you use?
hard
A. REPLICAOF NO ONE
B. REPLICAOF NONE
C. STOPREPLICA
D. DISABLEREPLICA
Solution
Step 1: Recall how to remove replication
To stop replication temporarily, use REPLICAOF NO ONE which makes the replica a standalone server.
Step 2: Check other options
Commands like REPLICAOF NONE, STOPREPLICA, DISABLEREPLICA do not exist in Redis.
Final Answer:
REPLICAOF NO ONE -> Option A
Quick Check:
Stop replication = REPLICAOF NO ONE [OK]
Hint: Use REPLICAOF NO ONE to stop replication temporarily [OK]
Common Mistakes:
Using incorrect command variants
Trying to shut down replica to stop replication
Confusing NO ONE with NONE
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.