Linux中: "一个服务器上运行多个Redis服务,应该保证哪些配置不一致"

在同一台服务器上运行多个 Redis 实例时,需要确保每个实例具有独立且不冲突的配置。重点需要保证以下四个配置不冲突(1个端口,3个文件)

  1. 监听的端口

  2. 指定的pid文件

  3. 持久化文件

  4. 日志文件


注意事项:

pidfile 文件问题:

每个 redis 实例都应拥有单独的 PID 文件路径,如采用守护进程模式(配置文件中配置 daemonize yes),使用 systemd 的管理时候,启动类型需要是: Type=forking ,并且需要保证systemd service 中的 PIDFile 指定的路径 和 redis.conf 中的 pidfile 指定的路径一致,否则不能正常启动。


持久化文件问题:

避免多个实例写入同一个文件导致数据覆盖。可以采用以下两种方式:

  • 不同的存储目录,相同的文件名
  • 相同的存储目录,不同德文件名

redi 支持不重启服务的情况下修改配置

假设多实例配置的时候,发现某个配置冲突了,例如持久化文件都存储到同一个路径下的同一个文件里面去了。但是此时手动修改配置文件,重启redis会导致业务受到影响,可以通过以下方式修改:
使用客户端工具连接到redis服务后:

  1. 修改指定配置项的值:CONFIG SET <参数名称> <值>
  2. 查看指定配置项的值:CONFIG GET <参数名称> (确认修改成功)
  3. 当前的配置参数重写到配置文件:CONFIG REWRITE (写入配置文件持久生效)

posted on 2025-11-22 10:31  背对背依靠  阅读(2)  评论(0)    收藏  举报