Redis主从复制部署

目录

一、主节点(master)配置

1.修改主节点配置文件(redis.conf)

2.启动主节点并验证

二、从节点配置

1.修改从节点配置文件

2.启动从节点并验证

三、验证主从复制效果


一、主节点(master)配置

1.修改主节点配置文件(redis.conf)

bash 复制代码
# 编辑Redis配置文件(路径根据安装方式调整,通常为/etc/redis/redis.conf或/usr/local/redis/redis.conf)
vim /etc/redis/redis.conf

修改以下核心配置:

bash 复制代码
# 1. 绑定IP(允许从节点访问,可绑定内网IP或0.0.0.0)
bind 0.0.0.0

# 2. 保护模式关闭(否则从节点无法连接)
protected-mode no

# 3. 端口(默认6379,保持不变即可)
port 6379

# 4. 后台运行
daemonize yes

# 5. 日志文件(方便排查问题)
logfile "/var/log/redis/redis-master.log"

# 6. 持久化(可选,建议开启,避免主节点重启数据丢失)
appendonly yes
appendfilename "appendonly.aof"

# 7. 可选:设置密码(如果主节点有密码,从节点必须配置相同密码)
# requirepass "yourmasterpassword"

2.启动主节点并验证

bash 复制代码
# 启动主节点
redis-server /etc/redis/redis.conf

# 检查主节点状态(是否启动成功)
redis-cli ping
# 正常返回 PONG 则说明主节点启动成功

# 查看主节点角色(此时应为master)
redis-cli info replication
# 输出中会看到 role:master,connected_slaves:0

二、从节点配置

1.修改从节点配置文件

bash 复制代码
vim /etc/redis/redis.conf

修改核心配置(基础配置同主节点,额外增加主节点关联配置):

bash 复制代码
# 基础配置(同主节点)
bind 0.0.0.0
protected-mode no
port 6379  # 单服务器模拟时改为6380
daemonize yes
logfile "/var/log/redis/redis-slave.log"
appendonly yes

# 关键:指定主节点信息
replicaof 192.168.1.100 6379  # Redis 5.x及以下用 slaveof,6.x+用 replicaof

# 若主节点设置了密码,需添加此行
# masterauth "yourmasterpassword"

# 从节点只读(默认开启,建议保持)
replica-read-only yes

2.启动从节点并验证

bash 复制代码
# 启动从节点
redis-server /etc/redis/redis.conf

# 检查从节点状态
redis-cli ping  # 返回 PONG 则启动成功

# 查看从节点复制状态
redis-cli info replication
# 输出中会看到:
# role:slave
# master_host:192.168.1.100
# master_port:6379
# master_link_status:up (up表示主从连接正常)

三、验证主从复制效果

bash 复制代码
# 1. 登录主节点,写入数据
redis-cli
127.0.0.1:6379> set test "master-slave-replication"
OK

# 2. 登录从节点,读取数据(能读到主节点写入的数据则复制生效)
redis-cli
127.0.0.1:6379> get test
"master-slave-replication"

# 3. 再次查看主节点的复制信息(connected_slaves会变为1)
redis-cli info replication
# 输出中 connected_slaves:1,且会显示从节点的IP和端口
相关推荐
龙腾AI白云7 小时前
AI检索增强生成(RAG):解决大模型幻觉的核心落地技术
数据库·人工智能·机器学习·知识图谱
一 乐7 小时前
动漫书销售商城|基于springboot + vue动漫书销售商城(源码+数据库+文档)
java·数据库·vue.js·spring boot·毕业设计
zzj_2626107 小时前
MySQL常用操作
数据库·mysql
其实防守也摸鱼8 小时前
Fastjson 反序列化漏洞(JNDI注入)
android·数据库·安全·oracle·自动化·fastjson·反序列化
haerapi8 小时前
把 PostgreSQL 复制巡检做成可审计闭环:确定性采集、阈值判定与受控模型归纳
数据库·postgresql
微学AI9 小时前
不让每一步都调用最贵模型:用蓝耘智能路由改造自主式研究 Agent
数据库·人工智能·蓝耘
yjb.gz9 小时前
Oracle19 RAC查看集群状态及磁盘空间情况(巡检)
数据库
钝挫力PROGRAMER9 小时前
开发踩坑记:MyBatis selectKey、空 SQL
数据库·sql·mybatis
JosieBook9 小时前
【数据库】MySQL 实战精通系列 · 第6篇:InnoDB 存储引擎、日志与崩溃恢复
数据库·mysql
杨云龙UP10 小时前
TDengine 3.4.2.8 Community 三节点三副本生产集群部署实战(DNode/MNode/taosAdapter/Explorer)
大数据·linux·运维·数据库·tdengine·时序库