zoukankan      html  css  js  c++  java
  • redis 4.0.13 -- 主从模式

    1、前提

     本文使用的是redis-4.0.13.tar.gz版本。

    redis各版本下载地址:http://download.redis.io/releases/, 下载与安装单个redis查看我的另一篇《redis 4.0.13 -- 单个redis下载、安装、启动、验证》的“1、下载与初始化redis”

    按照我之前的文章《redis 4.0.13 -- 单个redis下载、安装、启动、验证》先在两个虚拟机上分别安装一个redis

    2、修改redis.conf配置

    修改其中一个你将其作为的redis的配置,redis.conf修改如下:

    # bind 127.0.0.1 ::1
    bind 0.0.0.0           使不同IP也能连上此节点,否则会报错:Error condition on socket for SYNC: Connection refused
    daemonize no           如果改成yes,则表示redis服务后台运行,这里保持默认
    
    #protected-mode yes
    protected-mode no      关闭保护模式,使从节点能连接上此主节点
    
    pidfile /var/run/redis_6379.pid     指定你自己的pid数据库存储路径
    logfile /home/program/redis-4.0.13/logfile_6379.log   指定你自己的log日志存放路径

    再修改另外一个的配置,redis.conf修改如下:

    bind 0.0.0.0                        使不同IP也能连上此节点,否则会报错:Error condition on socket for SYNC: Connection refused
    daemonize no                        如果改成yes,则表示redis服务后台运行,这里保持默认
    protected-mode no                   关闭保护模式,使从节点能连接上此主节点
    pidfile /var/run/redis_6379.pid     指定你自己的pid数据库存储路径
    logfile /home/program/redis-4.0.13/logfile_6379.log           指定你自己的log日志存放路径
    slaveof 192.168.10.150 6379         重点!配置上master主节点的信息,配置自己为slave从节点

    3、启动主从服务端

    分别启动主从服务端:

    cd 目录/redis-4.0.13          
    cd src
    ./redis-server               启动服务端。或者带上指定配置文件启动:./redis-server ../redis.conf     启动服务端,命令阻塞的时候,不要关闭该窗口。

    把自己变成slave从节点的另一个方法是:

    127.0.0.1:6379>slaveof 192.168.10.150 6379        表示当前redis设置150的6379的redis为master主节点,并把当前节点(自己)作为slave从节点。

    4、验证服务端启动命令

    查看redis启动情况: ps -ef|grep redis

    5、启动主客户端验证

    src/redis-chi -h 主IP -p 6379
    主IP:6379>info         执行info命令查看master信息:

     6、启动从客户端验证

    src/redis-chi -h 从IP -p 6379
    从IP:6379>info         执行info命令查看master信息:

    7、验证主从

    验证环节:

    redis上设置一个key value,然后去redis节点就能读到了。

    注意:默认情况下slave从节点是只读,如果有需要,则需要改主节点的redis.conf,把slave-read-only yes 改成no

     8、退出客户端命令

    127.0.0.1:6379>exit

     9、主从模式弊端

    主从模式有个缺点,如果主挂了,从没办法知道,所以需要哨兵。但是如果这个哨兵也挂了呢?所以需要3个哨兵。。。

    请查看我的其他文章:

    redis 4.0.13 -- 哨兵模式

    redis 4.0.13 -- 集群模式

  • 相关阅读:
    C++的XML编程经验――LIBXML2库使用指南
    C/C++:sizeof('a')的值为什么不一样?
    Linux core dump file详解
    非阻塞socket的连接
    Java环境设置、HelloWorld例子、Ant环境及运行
    linux下杀死进程命令
    IP协议详解
    内置函数(上)
    异常处理
    递归函数与二分法
  • 原文地址:https://www.cnblogs.com/zhuwenjoyce/p/12288330.html
Copyright © 2011-2022 走看看