zoukankan      html  css  js  c++  java
  • redis主从复制

    1、redis支持简单且易用的主从复制(master-slave replication)功能,该功能可以让从服务器(slave server)成为主服务器(master server)的精确复制品。

    2、以下是关于redis复制功能的几个重要方面
    1)redis使用异步复制。
    2)一个主服务器可以有多个从服务器。
    3)不仅主服务器可以有从服务器,从服务器也可以有自己的从服务器,多个从服务器之间可以构成一个网状结构
    4)复制功能不会阻塞主服务器。
    5)复制功能也不会阻塞从服务器。
    6)复制功能可以单纯地用于数据冗余(data redundancy),也可以通过让多个从服务器处理只读命令请求来提升扩展性(scalability)。
    7)可以通过复制功能来让主服务器免于执行持久化操作。

    3、相关配置
    1)配置一个从服务器非常简单,只要在配置文件中增加以下的这一行就可以了:

    • slaveof 主服务器IP 端口

    2)另外一种方法是调用slaveof命令,输入主服务器的IP和端口,然后同步就会开始:

    • slaveof 主服务器IP 端口

    3)启动从服务器,进入客户端,通过info replication命令可以查看redis服务的信息

     此时看到master_link_status值为down,出现这个问题的原因有很多。

    • 首先检查主服务器6379端口有没有对外开放,如果没有需要打开。
    • 还需要编辑一下主服务器的配置文件
    • 默认情况下这个值为yes,是保护模式,如果从机没有密码来访问主机,保护模式会阻止从机访问。先临时改成no
    • 默认是只能这个IP来访问,可以临时注释掉或者改为0.0.0.0对所有IP开放

    重启主机redis服务。
    此时通过命令查看从服务器状态可以发现master_link_status值为up

    4、从服务器只读
    1)从redis2.6开始,从服务器支持只读模式,并且该模式为从服务器的默认模式。
    2)只读模式由redis.conf文件中的slave-read-only选项控制,也可以通过CONFIG SET命令来开启或关闭这个模式。(不建议)

    5、从服务器配置
    1)如果主服务器通过requirepass选项设置了密码,那么为了让从服务器的同步操作可以顺利进行,也必须为从服务器进行相应的身份验证设置。
    2)config set masterauth <password>或者masterauth <password>

    6、主服务器其他配置
    1)从redis2.8开始,为了保证数据的安全性,可以通过配置,让主服务器只在有至少N个当前已连接从服务器的情况下,才执行写命令。
    2)用户可以通过配置,指定网络延迟的最大值min-slaves-max-lag,以及执行写操作所需的至少从服务器数量min-slaves-to-write。

  • 相关阅读:
    HTTP 方法:GET 对比 POST
    js中return的用法
    Javascript:谈谈JS的全局变量跟局部变量
    ajax请求数据之后在已经有的数据前面打对勾的方法
    JS中的call()和apply()方法区别
    聚簇索引与非聚簇索引的区别
    Android开发(27)--TextView单击链接弹出Activity
    Android 4.2启动代码分析(一)
    Android重启应用程序代码
    java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
  • 原文地址:https://www.cnblogs.com/lxhyty/p/11525595.html
Copyright © 2011-2022 走看看