ubuntu

Redis在Ubuntu上如何配置主从复制

小樊
39
2025-09-29 19:20:16
栏目: 云计算

在Ubuntu上配置Redis的主从复制可以通过以下步骤完成。假设你已经安装了Redis,并且有一个主节点和一个或多个从节点。

主节点配置

  1. 编辑主节点的Redis配置文件: 打开主节点的Redis配置文件,通常位于 /etc/redis/redis.conf

    sudo nano /etc/redis/redis.conf
    
  2. 确保主节点配置正确: 确保以下配置项存在并且正确:

    bind 127.0.0.1  # 绑定到本地地址,如果需要远程访问可以注释掉
    port 6379         # Redis端口
    requirepass your_master_password  # 设置主节点密码
    
  3. 重启主节点Redis服务: 保存并关闭配置文件后,重启Redis服务以应用更改。

    sudo systemctl restart redis-server
    

从节点配置

  1. 编辑从节点的Redis配置文件: 打开从节点的Redis配置文件,通常位于 /etc/redis/redis.conf

    sudo nano /etc/redis/redis.conf
    
  2. 配置从节点连接到主节点: 在配置文件中添加以下行,替换 master_ip 为主节点的IP地址,master_port 为主节点的端口(默认是6379),master_password 为主节点的密码。

    slaveof master_ip master_port
    masterauth master_password
    

    例如:

    slaveof 192.168.1.100 6379
    masterauth your_master_password
    
  3. 重启从节点Redis服务: 保存并关闭配置文件后,重启Redis服务以应用更改。

    sudo systemctl restart redis-server
    

验证配置

  1. 检查主节点状态: 使用 redis-cli 连接到主节点并检查其状态。

    redis-cli -h 192.168.1.100 -p 6379 -a your_master_password info replication
    

    你应该看到类似以下的输出,表示主节点正在运行并且没有从节点连接:

    # Replication
    role:master
    connected_slaves:0
    master_replid:your_master_replid
    master_replid2:your_master_replid2
    master_repl_offset:your_master_repl_offset
    second_repl_offset:your_second_repl_offset
    repl_backlog_active:0
    repl_backlog_size:1048576
    repl_backlog_histlen:0
    
  2. 检查从节点状态: 使用 redis-cli 连接到从节点并检查其状态。

    redis-cli -h 192.168.1.101 -p 6379 -a your_master_password info replication
    

    你应该看到类似以下的输出,表示从节点正在连接到主节点:

    # Replication
    role:slave
    master_host:192.168.1.100
    master_port:6379
    master_link_status:up
    master_link_down_since_seconds:0
    master_replid:your_master_replid
    master_replid2:your_master_replid2
    master_repl_offset:your_master_repl_offset
    second_repl_offset:your_second_repl_offset
    repl_backlog_active:1
    repl_backlog_size:1048576
    repl_backlog_histlen:100
    

通过以上步骤,你应该成功配置了Redis的主从复制。如果有任何问题,请检查日志文件 /var/log/redis/redis-server.log 以获取更多信息。

0
看了该问题的人还看了