在Centos上运行Redis的多个实例

时间:2016-09-06 15:38:10

标签: redis stackexchange.redis node-redis redis-server

我想在Centos 7上运行Redis的多个实例。 任何人都可以指向我正确的链接或在这里发布步骤。

我用Google搜索了相关信息,但我没有找到任何相关信息。

2 个答案:

答案 0 :(得分:12)

您可以在一台计算机上运行多个具有不同端口的redis实例。这种关注是正确的意味着您可以按照以下步骤操作。

  

通过安装第一个Redis实例,它默认侦听localhost:6379。

  • 第二次实例  创建一个新的工作目录

默认的redis实例使用/ var / lib / redis作为其工作目录,如果你没有手动更改它,则转储的内存保存在这个名为dump.rdb的目录下。为了避免运行时冲突,我们需要创建一个新的工作目录

mkdir -p /var/lib/redis2/
chown redis /var/lib/redis2/
chgrp redis /var/lib/redis2/

生成配置

通过复制/etc/redis.conf

创建新的配置文件
cp /etc/redis.conf /etc/redis2.conf
chown redis /etc/redis2.conf

编辑以下设置以避免冲突

logfile "/var/log/redis/redis2.log"
dir "/var/lib/redis2"
pidfile "/var/run/redis/redis2.pid"
port 6380

创建服务文件

cp /usr/lib/systemd/system/redis.service /usr/lib/systemd/system/redis2.service

修改服务部分

下的设置
[Service]
ExecStart=/usr/bin/redis-server /etc/redis2.conf --daemonize no
ExecStop=/usr/bin/redis-shutdown redis2

设置为以启动

开头
      systemctl enable redis2

启动第二次redis

service redis2 start


check status

lsof -i:6379
lsof -i:6380
  

通过以下操作,您可以启动两个redis服务器。如果您想要更多重复这些步骤。

答案 1 :(得分:0)

如果我设置为--daemonize no,则在插入数据时Redis将崩溃。

ExecStart=/usr/bin/redis-server /etc/redis2.conf --daemonize no

应更改为

ExecStart=/usr/bin/redis-server /etc/redis2.conf -受监督的系统

我的Redis是5.0.7。

仅供参考。