redis3.0 主从

两个实例:6000为主,6001为从。
主实例配置如下:
# replication
repl-diskless-sync no
repl-ping-slave-period 10
repl-timeout 60
repl-backlog-size 100mb
repl-backlog-ttl 3600
# 参数解释
repl-diskless-sync: 主从同步数据的方式,no表示使用磁盘(先生成rdb文件然后同步到salve进行加载),ye表示使用网络的方式无需磁盘参与,适合网络质量好磁盘读写慢的环境。
repl-timeout: 主从关系存活的超时时间,必须必repl-ping-slave-period大,否则没来得及做存活检查就超时了。
repl-ping-slave-period:slave向master发送存活检查ping的时间间隔。
从实例配置如下:
# replication
slave-read-only yes
slaveof 127.0.0.1 6000
masterauth 8a6715
主从配置完后,从库只能读无法响应写入的请求:
127.0.0.1:6001> set key2 value2
(error) READONLY You can't write against a read only slave.

手动主从切机

在主宕机时,需要先手动关闭主库,再在从机上关闭主从关系,从库便可写入
127.0.0.1:6001> slaveof NO ONE
OK
127.0.0.1:6001> set key100 value100
OK
127.0.0.1:6001> get key100
"value100"
127.0.0.1:6001>
假设原先的主库ok了,需要切回去。
将从库的数据save为 *.rbd 文件,拷贝到主库的数据目录中覆盖原有的,并启动主库
    127.0.0.1:6001> save
OK
127.0.0.1:6001> quit
[root@baseos-1_192.168.31.140 ~]# cp /data/database/redis/redis6001.rdb /data/database/redis/redis6000.rdb
cp: overwrite `/data/database/redis/redis6000.rdb'? y
[root@baseos-1_192.168.31.140 ~]# /root/redis6000.start
[2017-06-16 11:06:40] Redis-3.2.7 start ok, port: 6000.
[root@baseos-1_192.168.31.140 ~]#./redis6000.login
127.0.0.1:6000> keys *
1) "key_6000_new"
2) "key_6001"
3) "key100"
4) "key_6000"
5) "key_1"
127.0.0.1:6000>
从库重新做主从
[root@baseos-1_192.168.31.140 ~]# ./redis6001.login
127.0.0.1:6001> slaveof 127.0.0.1 6000
OK
127.0.0.1:6001> set aa bb
(error) READONLY You can't write against a read only slave.
127.0.0.1:6001> quit
[root@baseos-1_192.168.31.140 ~]# ./redis6000.login
127.0.0.1:6000> keys *
1) "key_6000_new"
2) "key_6001"
3) "key100"
4) "key_6000"
5) "key_1"
127.0.0.1:6000> set new_key new_value
OK
127.0.0.1:6000> quit
[root@baseos-1_192.168.31.140 ~]# ./redis6001.login
127.0.0.1:6001> get new_key
"new_value"
127.0.0.1:6001>

redis3.0 主从的更多相关文章

  1. CentOS完美搭建Redis3.0集群并附测试

    线上的统一聊天和推送项目使用的是redis主从,redis版本2.8.6 redis主从和mysql主从目的差不多,但redis主从配置很简单,主要在从节点配置文件指定主节点ip和端口:slaveof ...

  2. redis-3.0.0集群的安装及使用

    redis集群需要至少6个节点(偶数节点),3个主节点,3个从节点.注意:集群模式最好不要keys *查询数据. 1 下载redis,官网下载3.0.0版本,之前2.几的版本不支持集群模式.下载地址: ...

  3. redis3.0集群搭建

    生产环境中准备使用redis3.0集群了,花了一天时间研究了一下,下面记录一下集群搭建的过程. 服务器规划: 192.168.116.129    7000,7003 192.168.116.130 ...

  4. linux安装redis-3.0.7

    一.Redis介绍 1.简介 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类 ...

  5. redis3.0.3集群搭建

    redis3.0版本之后支持Cluster,具体介绍redis集群我就不多说,了解请看redis中文简介. 首先,直接访问redis.io官网,下载redis.tar.gz,现在版本3.0.3,我下面 ...

  6. Python并发编程-redis-3.0.5 源码安装

    1.简介 Remote Dictionary Server(Redis)是一个基于 key-value 键值对的持久化数据库存储系统.redis 和 Memcached 缓存服务很像,但它支持存储的 ...

  7. redis-3.0.6安装

    此redis用来缓存跨屏账户绑定信息,安装步骤如下: ssh root@redis.td.com ,注意是root用户 tar -xzvf /nfs/install/softs/redis-3.0.4 ...

  8. redis-3.0.0安装

    redis-3.0.0安装 前言 redis是常用的no-sql数据库,常用于缓存数据,同时,他也可以持久化数据.他是C语言开发的,所以安装的时候需要编译. 单机版redis yum install ...

  9. 【Redis3.0.x】实战案例

    Redis3.0.x 实战案例 简介 <Redis实战>的学习笔记和总结. 书籍链接 初识 Redis Redis 简介 Redis 是一个速度非常快的键值对存储数据库,它可以存储键和五种 ...

随机推荐

  1. 如何在CentOS 7中安装最新Git(源码安装)

    如何在CentOS 7中安装最新Git 2017年05月20日 11:49:53 阅读数:1624 Git是在今天的软件开发行业一个非常有用的版本控制工具.我一直使用Git.于是为Linux公社的读者 ...

  2. Tf中的SGDOptimizer学习【转载】

    转自:https://www.tensorflow.org/api_docs/python/tf/train/GradientDescentOptimizer 1.tf.train.GradientD ...

  3. [ Linux运维学习 ] 路径及实战项目合集

    我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...

  4. [Git/GitHub] Tutorial 1. Git download and commit first project

    1. Install at https://git-scm.com/downloads 2. Set up your name and email $ git config --global user ...

  5. [Java in NetBeans] Lesson 00. Getting Set-up for Learning Java

    这个课程的参考视频在youtube. 主要学到的知识点有: set up needs Java SE JDK, NetBeans IDE class name should be the same l ...

  6. sql server相关

    sql server nolock 在sqlserver 中with(nolock)详解   所有Select加 With (NoLock)解决阻塞死锁 在查询语句中使用 NOLOCK 和 READP ...

  7. python的赋值,深拷贝和浅拷贝的区别

    原文地址https://www.cnblogs.com/xueli/p/4952063.html 赋值:a = [1,2,3,["a","b"]]  b=a,那 ...

  8. Lua 与 OC 相互调用

    本文主要讲如何完成lua和object-c的相互调用.       lua是一种脚本语言,可以方便的移植到各种宿主语言中,并且可以支持热更新,在游戏开发中也能当做主要的语言来编写游戏的逻辑,但是要接入 ...

  9. HTTP通信机制

    HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将完成下列7个步骤:  1. 建立TCP连接 在HTTP工作开始之前,Web浏览器首先要通过网络与Web服务器建立连接, ...

  10. MyBatis基础入门《十二》删除数据 - @Param参数

    MyBatis基础入门<十二>删除数据 - @Param参数 描述: 删除数据,这里使用了@Param这个注解,其实在代码中,不使用这个注解也可以的.只是为了学习这个@Param注解,为此 ...