如何在一台机器上创建两个不同的 redis 实例

113 阅读2分钟

安装 redis

  1. 打开终端
  2. 使用包管理器安装 redis

CentOS 使用以下命令:

sudo yum update
sudo yum install redis
  1. 安装完成后,Redis 服务将自动启动,并且会在系统重启时自动启动。
  2. 验证 Redis 是否成功安装:
    • 运行以下命令:
    sudo systemctl status redis
    
    • 如果 redis 正在运行,有以下类似内容:

    redis-running.png

复制 redis 配置文件

  1. 复制 Redis 配置文件:
    • 复制原始的 Redis 配置文件 /etc/redis/redis.conf 并创建一个新的配置文件,例如 /etc/redis/redis2.conf
    sudo cp /etc/redis/redis.conf /etc/redis/redis2.conf
    
  2. 修改 Redis2 配置文件:
    • 打开新创建的 Redis2 配置文件 /etc/redis/redis2.conf
    sudo nano /etc/redis/redis2.conf
    
    • 在 Redis2 配置文件中,需要修改以下选项:
      • port:设置 Redis2 实例的监听端口,确保它与其他实例的端口不冲突。
      • dir:设置 Redis2 实例的数据目录,确保它与其他实例的数据目录不重叠。
    • 可以根据需要进行其他自定义配置更改。
  3. 创建 Redis2 的数据目录:
    • 使用与第一个实例类似的步骤,在适当的位置创建 Redis2 的数据目录,例如 /var/lib/redis2
    sudo mkdir /var/lib/redis2
    sudo chown redis:redis /var/lib/redis2
    
  4. 创建 Redis2 服务单元文件:
    • 创建 Redis2 的 systemd 服务单元文件 /etc/systemd/system/redis2.service
    sudo nano /etc/systemd/system/redis2.service
    
    • 将以下内容复制到服务单元文件中:
    [Unit]
    Description=Redis2 persistent key-value database
    After=network.target
    
    [Service]
    ExecStart=/usr/bin/redis-server /etc/redis/redis2.conf --supervised systemd --daemonize no --protected-mode no
    ExecStop=/usr/libexec/redis-shutdown
    Type=notify
    User=redis
    Group=redis
    RuntimeDirectory=redis2
    RuntimeDirectoryMode=0755
    
    [Install]
    WantedBy=multi-user.target
    
    • 保存并关闭文件。
  5. 启用和启动 Redis2 服务:
    • 启用 Redis 服务:
    sudo systemctl enable redis.service
    
    • 启用 Redis2 服务:
    sudo systemctl enable redis2.service
    

以上,你已经成功在一台 Linux 机器上运行了两个 Redis 实例。每个实例使用自己的配置文件、端口和数据目录。

可以通过执行以下命令来验证每个实例的状态:

sudo systemctl status redis.service
sudo systemctl status redis2.service