我们来配置一个一主两从的服务,根据前面写的已经配置好的redis基础上进行主从配置

一:进入redis的配置目录

cd /usr/local/redis

创建下面3个目录,命令为:
make -p /usr/local/redis/master /usr/local/redis/slave1 /usr/local/redis/slave2

复制 redis.conf 到这个3个目录

cp /usr/local/redis/redis.conf  /usr/local/redis/master/redis.conf

依次复制redis.conf到另外2个从配置目录

二:配置项

2.1)修改端口为master->1000, slave1->2000, slave2->3000

vi /usr/local/redis/master/redis.conf

相应的修改其它2个从配置文件

2.2) 修改pidfile和logfile
在redis.conf中找到pidfile和logfile
pidfile /usr/local/redis/master/redis.pid
logfile /usr/local/redis/master/redis.log

相应的修改其它2个从配置文件slave1,slave2

2.3) 把启动方式设置为后台常驻进程方式
daemonize yes

修改主从所有的配置文件

2.4) 当然我们还可以设置外网访问的ip,(下面的实践没有设置,简单点)
默认就是绑定到了127.0.0.1

三:启动3个redis

/usr/local/redis/bin/redis-server /usr/local/redis/master/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/slave1/redis.conf
/usr/local/redis/bin/redis-server /usr/local/redis/slave2/redis.conf

四:客户端连接redis

4.1)连接slave1:
./bin/redis-cli -h 127.0.0.1 -p 2000

然后输入下面的命令查看服务器信息:

127.0.0.1:> info Replication
# Replication
role:master
connected_slaves:
master_repl_offset:
repl_backlog_active:
repl_backlog_size:
repl_backlog_first_byte_offset:
repl_backlog_histlen:

# Replication
role:master

查看其它2台服务器得到的都是同样的信息

五:那么下面开始主从复制的配置

修改2台从服务器的配置文件
vi /usr/local/redis/slave1/redis.conf
设置为 slaveof 127.0.0.1 1000
如下图:

2台从服务器配置完成后,重启redis,查看redis是否重启成功
ps -ef|grep redis

主服务器不需要修改配置

六:验证

6.1)登录进从服务器slave1

[root@localhost redis]# ./bin/redis-cli -h 127.0.0.1 -p
127.0.0.1:> info replacation
# Replication
role:slave
master_host:127.0.0.1
master_port:
master_link_status:up
master_last_io_seconds_ago:
master_sync_in_progress:
slave_repl_offset:
slave_priority:
slave_read_only:
connected_slaves:
master_repl_offset:
repl_backlog_active:
repl_backlog_size:
repl_backlog_first_byte_offset:
repl_backlog_histlen:

6.2)登录进主服务器master:

[root@localhost redis]# ./bin/redis-cli -h 127.0.0.1 -p
127.0.0.1:> info replication
# Replication
role:master
connected_slaves:
slave0:ip=127.0.0.1,port=,state=online,offset=,lag=
slave1:ip=127.0.0.1,port=,state=online,offset=,lag=
master_repl_offset:
repl_backlog_active:
repl_backlog_size:
repl_backlog_first_byte_offset:
repl_backlog_histlen:

6.3)打开3个客户端窗口,分别连上主服务器和2个从服务器
master服务器用set命令设置一个值:
[root@localhost redis]# ./bin/redis-cli -h 127.0.0.1 -p 1000
127.0.0.1:1000> set test testslave
OK

查看2台从服务器是否获取到正确的值:
[root@localhost redis]# ./bin/redis-cli -h 127.0.0.1 -p 2000
127.0.0.1:2000> get test
"testslave"

[root@localhost redis]# ./bin/redis-cli -h 127.0.0.1 -p 3000
127.0.0.1:3000> get test
"testslave"

全部得到正确的值,说明配置就成功了

参考:

http://doc.redisfans.com/topic/replication.html

redis主从复制配置(1)的更多相关文章

  1. Redis主从复制配置+哨兵模式

    架构设计: master:s0 slave:s1.s2 主机映射信息如下: 192.168.32.100 s0 192.168.32.101 s1 192.168.32.102 s2 1.安装Redi ...

  2. Windows环境和Linux环境下Redis主从复制配置

    Windows环境下和Linux环境下配置Redis主从复制基本上一样,都是更改配置文件.Windows环境下修改的配置文件是:redis.windows.conf.redis.windows-ser ...

  3. windows下Redis主从复制配置(报错:Invalid argument during startup: unknown conf file parameter : slaveof)

    主从复制配置中的遇到的异常: Invalid argument during startup: unknown conf file parameter :  slaveof 把Redis文件夹复制两份 ...

  4. redis主从复制配置

    master配置 主要是下面配置 # ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the # intern ...

  5. redis的主从复制配置

    redis的主从复制配置 一.     原理 Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架 ...

  6. 实现Redis的主从复制配置

    实现Redis的主从复制配置比较简单,而且容易明白. 下图是要配置的主从复制结构图: 1.说明 Redis主从复制中一个主服务可以有多个从服务,一个从服务可以有多个从服务. 配置比较简单,只需要更改r ...

  7. 配置Redis主从复制

    [构建高性能数据库缓存之redis主从复制][http://database.51cto.com/art/201407/444555.htm] 一.什么是redis主从复制? 主从复制,当用户往Mas ...

  8. Linux07 /redis的配置、五大数据类型、发布订阅、持久化、主从复制、哨兵配置、集群搭建

    Linux07 /redis的配置.五大数据类型.发布订阅.持久化.主从复制.哨兵配置.集群搭建 目录 Linux07 /redis的配置.五大数据类型.发布订阅.持久化.主从复制.哨兵配置.集群搭建 ...

  9. Redis教程(九):主从复制配置实例

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/136.html 一.Redis的Replication: 这里首先需要说明 ...

随机推荐

  1. linux mysql -- ERROR! The server quit without updating PID file (/usr/local/mysql/data/localhost.localdomain.pid)

    转载 http://blog.csdn.net/caiyaodeng/article/details/45937183 linux 链接mysql 报错 ERROR! The server quit ...

  2. spring boot和swagger 整合

    本文来源:https://blog.csdn.net/saytime/article/details/74937664 一.依赖 <dependency> <groupId>i ...

  3. 数据库MySQL5.7.21win64位安装配置

    1,在MySQL官网下载mysql对应版本 https://dev.mysql.com/downloads/mysql/ 2,解压压缩文件到想要的位置 3,配置环境 打开  右键我的电脑-->属 ...

  4. SpringBoot部署jar与war

    jar部署与启动/关闭 1.打包 clean 清理已有target目录 package 重新打包 获取打包路径,通过 scp命令发送到服务器端,scp -P ${port} ${.jar} ${use ...

  5. MVC 自定义 错误页面

    很多时候,我们需要自定义错误页面,用来当发生异常后引导用户进入一个比较友好的错误页面. 在这里,我归结一下我常用的2个方案 1   通过Global.asax 文件来处理异常信息(这个不管是 MVC ...

  6. python中raise的用法

    有关于python里raise显示引发异常的方法: 当程序出错时,python会自动触发异常,也可以通过raise显示引发异常 一旦执行了raise语句,raise之后的语句不在执行 如果加入了try ...

  7. Java的equals方法,首先要判断类型是否相同

    如下代码,Long 和Integer 进行比较: Integer aa = 1; Long bb= 1L; System.out.println(aa.equals(bb)); 输出为:false 查 ...

  8. HAOI2016 简要题解

    「HAOI2016」食物链 题意 现在给你 \(n\) 个物种和 \(m\) 条能量流动关系,求其中的食物链条数. \(1 \leq n \leq 100000, 0 \leq m \leq 2000 ...

  9. 实验六 MapReduce实验:二次排序

    实验指导: 6.1 实验目的基于MapReduce思想,编写SecondarySort程序. 6.2 实验要求要能理解MapReduce编程思想,会编写MapReduce版本二次排序程序,然后将其执行 ...

  10. 自学Python4.4-装饰器的进阶

    自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...