1、主从redis,安装配置都是一样的。下面开始从服务器的配置。

参考的网址为:http://yanliu.org/2015/08/27/Redis%E4%B8%BB%E4%BB%8E%E5%A4%8D%E5%88%B6%E7%9A%84%E5%AE%9E%E7%8E%B0/

2、配置文件"/etc/redis/6379.conf"

  2.1、“# slaveof <masterip> <masterport>” 的下面写上

    “# slaveof 192.168.1.235 6379”

  2.2、“# masterauth <master-password>” 的下面写上

    “# masterauth 123456”

3、客户端是运行状态的话,配置修改后 需要 执行操作 "/etc/init.d/redis_6379 restart"

  ZC: 貌似这一步不是必须的...

4、主服务器的“/var/log/redis_6379.log”文件中,会出现 类似如下的信息:

  1. 2169:M 08 Sep 15:48:15.331 * Slave 192.168.1.17:6379 asks for synchronization
  2. 2169:M 08 Sep 15:48:15.331 * Full resync requested by slave 192.168.1.17:6379
  3. 2169:M 08 Sep 15:48:15.331 * Starting BGSAVE for SYNC with target: disk
  4. 2169:M 08 Sep 15:48:15.332 * Background saving started by pid 4167
  5. 4167:C 08 Sep 15:48:15.517 * DB saved on disk
  6. 4167:C 08 Sep 15:48:15.517 * RDB: 6 MB of memory used by copy-on-write
  7. 2169:M 08 Sep 15:48:15.577 * Background saving terminated with success
  8. 2169:M 08 Sep 15:48:15.577 * Synchronization with slave 192.168.1.17:6379 succeeded

5、测试操作

  5.1、Mater端

  1. [root@localhost ~]# redis-cli
  2. 127.0.0.1:6379> auth 123456
  3. OK
  4. 127.0.0.1:6379> info replication
  5. # Replication
  6. role:master
  7. connected_slaves:1
  8. slave0:ip=192.168.1.17,port=6379,state=online,offset=505,lag=1
  9. master_repl_offset:505
  10. repl_backlog_active:1
  11. repl_backlog_size:1048576
  12. repl_backlog_first_byte_offset:2
  13. repl_backlog_histlen:504
  14. 127.0.0.1:6379> set testMasterKey01 "testMasterValue01"
  15. OK
  16. 127.0.0.1:6379> get testMasterKey01
  17. "testMasterValue01"
  18. 127.0.0.1:6379>

  5.2、Slave端(没有设置密码)

  1. [root@CentOS64x64 redis]# redis-cli
  2. 127.0.0.1:6379> ping
  3. PONG
  4. 127.0.0.1:6379> info replication
  5. # Replication
  6. role:slave
  7. master_host:192.168.1.235
  8. master_port:6379
  9. master_link_status:up
  10. master_last_io_seconds_ago:7
  11. master_sync_in_progress:0
  12. slave_repl_offset:713
  13. slave_priority:100
  14. slave_read_only:1
  15. connected_slaves:0
  16. master_repl_offset:0
  17. repl_backlog_active:0
  18. repl_backlog_size:1048576
  19. repl_backlog_first_byte_offset:0
  20. repl_backlog_histlen:0
  21. 127.0.0.1:6379> get testMasterKey01
  22. "testMasterValue01"
  23. 127.0.0.1:6379> get testMasterKey02
  24. (nil)
  25. 127.0.0.1:6379>

    5.2.1、此时,在Slave端 设置key-value,就报错了,说是只读的,不让往里面写

  1. 127.0.0.1:6379> set testSlaveKey01 "testSlaveValue01"
  2. (error) READONLY You can't write against a read only slave.
  3. 127.0.0.1:6379>

      ZC: 貌似,也可以配置 使得Slave能够写,但是 有一些说法和限制,具体参看 http://redis.io/topics/replication 中的相关章节("Read-only slave"、"Allow writes only with N attached replicas"等)

6、

7、

8、

20160908_Redis主从复制Replication的更多相关文章

  1. mysql5.6做单向主从复制Replication

    原理场景:MySQL从3.23版本开始提供复制功能.指的是将主数据库的DDL和DML操作通过二进制日志传到从服务器(也叫从库),然后在从库上对这些日志重新执行, 从而使得从库和主库的数据保持同步. 优 ...

  2. MySQL主从复制(Replication for Backup)

    环境:MySQL5.7,VMware-Workstation-12-Pro,Windows-10,CentOS-7.5,Xshell5 1. 基本概念和操作思路 主从复制能做什么 数据库的主从复制,是 ...

  3. mysql主从复制replication的一些相关命令

    主服务器上的相关命令:show master status; mysql> show master status\G . row *************************** Posi ...

  4. MySQL主从复制(Replication)(MySQL数据同步)配置

    MySQL是开源的关系型数据库系统.复制(Replication)是从一台MySQL数据库服务器(主服务器master)复制数据到另一个服务器(从服务器slave)的一个进程. 配置主服务器(mast ...

  5. Linux MySQL主从复制(Replication)配置

    MySQL是开源的关系型数据库系统.复制(Replication)是从一台MySQL数据库服务器(主服务器master)复制数据到另一个服务器(从服务器slave)的一个进程. 配置主服务器(mast ...

  6. 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制

    1.Units单位 配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit 对大小写不敏感 2.INCLUDES包含 和我们的Struts2配置文件类似,可以通过includes包 ...

  7. centos5.4下mysql主从复制

    centos5.4下mysql主从复制配置分享. 本文转自:http://www.jbxue.com/article/771.html 安装环境:centos 5.4 mysql版本:mysql 5. ...

  8. 浅谈mysql主从复制的高可用解决方案

    1.熟悉几个组件(部分摘自网络)1.1.drbd     —— DRBD(Distributed Replicated Block Device),DRBD号称是 "网络 RAID" ...

  9. 【Redis学习之八】Redis集群:主从复制

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 redis-2.8.18 Redis集群分类: 主从复制 R ...

随机推荐

  1. PHP 判断客户端是IOS还是Android

    <?php if(strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone')||strpos($_SERVER['HTTP_USER_AGENT'], 'iPad ...

  2. rabbitMQ集群部署以及集群之间同步

    MQ集群部署 期待的部署架构 其中,一个机房有两台机器部署MQ,并组成集群,有一个机房的MQ集群作为中心集群,其他机房的MQ集群将消息同步到中心MQ集群中. 安装erlang,略.. 安装rabbit ...

  3. AFNetWorking 队列请求

    我们在开发过程中,经常会遇到有些页面不止一个网络请求,有时候需要两个三个甚至更多,这个时候我们就需要队列请求,下边是GET请求的多个请求放在队列里边: NSURL *url = [NSURL URLW ...

  4. JQuery + JSON作为前后台数据交换格式实践

    JQuery + JSON作为前后台数据交换 JQuery提供良好的异步加载接口AJAX,可以局部更新页面数据, http://api.jquery.com/category/ajax/ JSON作为 ...

  5. 字节流和字符流(PrintStream类和PrintWiter类)

    要想输入和输出各种数据类型,通常要打印输入流PrintStream和PrintWriter.其中,PrintStream操作的是字节,PrintWriter操作的是字符. 1:PrintStream类 ...

  6. js验证手机号输入是否符合规则

    function isPhone(phone){ var myreg = /^(((13[0-9]{1})|15[0-9]{1}|17[0-9]{1}|185|18[0-9]{1})+\d{8})$/ ...

  7. eclipse中配置tomcat

    配置eclipse中的tomcat非常简单,之前以为windows下和mac中可能会不一样,但是经过配置发现是一样的: 下面就是在eclipse中简单的配置tomcat如下(mac和windows中都 ...

  8. DruidDataSource配置属性列表

    DruidDataSource配置兼容DBCP,但个别配置的语意有所区别. 配置 缺省值 说明 name   配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配置 ...

  9. LeetCode: Nim Game

    这题其实不太好想,用到了博弈论 1,2,3 能赢 4 输 5,6,7 赢 8 输 9,10,11 赢 12 输 那么结论就是4的倍数就是输,其他情况就能赢. 为什么会是这样呢?很好解释,根源就在4会输 ...

  10. 蓝灯(lantern)在服务器(vps)上运行

    蓝灯(lantern)在无界面的linux下运行的时候,会遇到一个错误: error while loading shared libraries: libappindicator3.so.1: ca ...