Redis主从配置

本文涉及的产品
云数据库 Redis 版,标准版 2GB
推荐场景:
搭建游戏排行榜
云原生内存数据库 Tair,内存型 2GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: Redis主从配置

转载请注明出处:

Redis主从配置的特点

  1. 数据同步:主库(Master)负责处理写请求,并将数据更改同步到从库(Slave)。从库主要用于读请求和数据备份。
  2. 读写分离:通过配置从库为只读,可以有效分散读请求,提升系统性能。
  3. 高可用性和容错:即使主库出现故障,从库也能继续提供读服务,并在主库恢复后重新同步数据。
  4. 可扩展性:支持一主多从以及多级从结构,可以根据需要扩展从库数量,提高系统读取能力和数据冗余度。
  5. 异步复制:主从同步是异步进行的,不会阻塞主库处理请求。

配置

  在Redis中,主从配置主要通过修改配置文件(通常是redis.conf)来实现。以下是一些关键配置项:

  1. 主库配置
  • 无需特别配置即可作为主库使用,但需确保监听端口和绑定地址正确设置。
  • 可以选择关闭数据持久化(如RDB和AOF),以提高主库性能,但需注意数据安全性。
  1. 从库配置
  • slaveof <masterip> <masterport>:指定从库要复制的主库IP地址和端口号。
  • replica-read-only yes(Redis 5.0及以上版本中使用replicaof替代了slaveof,但效果相同):设置从库为只读模式。
  • 其他配置如日志、持久化等可根据需要进行调整。

主库配置文件(redis_master.conf)

# 端口号  
port 6379  
  
# 启用守护进程模式  
daemonize yes  
  
# 日志文件位置  
logfile "/var/log/redis/redis-server.log"  
  
# 数据目录  
dir "/var/lib/redis"  
  
# 最大内存限制(根据需要调整)  
maxmemory 16gb  
  
# 数据持久化配置(此处以RDB为例,AOF可根据需要配置)  
save 900 1  
save 300 10  
save 60 10000  
  
# 其他配置...

从库配置文件(redis_slave.conf)

# 端口号(与主库不同)  
port 6380  
  
# 启用守护进程模式  
daemonize yes  
  
# 日志文件位置  
logfile "/var/log/redis/redis-slave-server.log"  
  
# 数据目录  
dir "/var/lib/redis_slave"  
  
# 指定要复制的主库  
slaveof 192.168.1.100 6379  
  
# 设置为只读模式  
replica-read-only yes  
  
# 其他配置(如持久化、内存限制等可根据需要调整)  
# ...

注意:

  • 在实际部署时,需要将slaveof(或replicaof)指令中的IP地址和端口号替换为实际的主库地址和端口号。
  • 配置文件中的其他选项(如日志位置、数据目录、内存限制等)也应根据实际需求进行调整。
  • Redis的主从配置是异步的,因此在网络延迟较高或主库负载较重时,从库的数据可能会有一定的滞后。
  • 为了确保数据安全,建议同时配置RDB和AOF持久化机制,或者在从库上配置持久化而禁用主库的持久化功能。

命令查看主从角色

  方式1:通过Info replication 命令进行查看

  查看当前节点主从角色命令:

INFO replication

  在主节点上进行查看:

         

  在备节点上进行查看:

             

  方式2:通过role命令进行查看

  在主节点上执行:  

                 

  在从节点上执行:

               

 

标签: redis

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
14天前
|
NoSQL Redis 容器
【Azure Cache for Redis】Redis的导出页面无法配置Storage SAS时通过az cli来完成
【Azure Cache for Redis】Redis的导出页面无法配置Storage SAS时通过az cli来完成
|
15天前
|
缓存 NoSQL 测试技术
【Azure Redis 缓存】Azure Redis 功能性讨论三: 调优参数配置
【Azure Redis 缓存】Azure Redis 功能性讨论三: 调优参数配置
|
15天前
|
存储 缓存 NoSQL
【Azure Redis 缓存】由Azure Redis是否可以自定义密码而引申出Azure PaaS的Redis服务是否可以和自建的Redis进行主从配置呢?
【Azure Redis 缓存】由Azure Redis是否可以自定义密码而引申出Azure PaaS的Redis服务是否可以和自建的Redis进行主从配置呢?
|
15天前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置
【Azure Redis 缓存】如何使得Azure Redis可以仅从内网访问? Config 及 Timeout参数配置
|
2月前
|
NoSQL Redis
Redis 主从复制架构配置及原理
Redis 主从复制架构配置及原理
40 5
|
17天前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
|
2月前
|
NoSQL Redis 数据库
redis 持久化机制及配置
redis 持久化机制及配置
61 4
|
2月前
|
NoSQL Redis
Redis性能优化问题之根据 Redis 的 AOF 配置级别优化性能,如何解决
Redis性能优化问题之根据 Redis 的 AOF 配置级别优化性能,如何解决
|
2月前
|
NoSQL Redis
Redis性能优化问题之为什么配置为 appendfsync everysec 的 AOF 也可能导致 Redis 延迟变大
Redis性能优化问题之为什么配置为 appendfsync everysec 的 AOF 也可能导致 Redis 延迟变大
|
24天前
|
存储 NoSQL Ubuntu
在Ubuntu 16.04上安装和配置Redis的方法
在Ubuntu 16.04上安装和配置Redis的方法
54 0