redis的主从复制配置实验

环境介绍:
OS:oracle linux 5.6
redis:redis-2.6.8
master rac1 192.168.2.101
slave    rac2 192.168.2.102

下载地址:
http://redis.googlecode.com/files/redis-2.6.8.tar.gz

安装配置redis主从复制
1. 主节点配置
[root@rac1 opt] tar zxvf  redis-2.6.8.tar.gz
[root@rac1 opt] cd  redis-2.6.8
[root@rac1 redis-2.6.8]# make
[root@rac1 redis-2.6.8]# cp src/redis-server /usr/local/bin/
[root@rac1 redis-2.6.8]# cp redis.conf /etc/redis_master.conf
[root@rac1 redis-2.6.8]# cat /etc/redis_master.conf
# If port 0 is specified Redis will not listen on a TCP socket.
port 6379 #此端口是redis默认的,可以不改

--复制软件到从节点
[root@rac1 opt]# scp -r redis-2.6.8 rac2:/opt

2. 从节点配置
[root@rac2 redis-2.6.8]# cp src/redis-server /usr/local/bin/
[root@rac2 redis-2.6.8]# cp redis.conf /etc/redis_slave.conf
# If port 0 is specified Redis will not listen on a TCP socket.
port 6389 #修改为slave节点的自定义端口
# slaveof <masterip> <masterport>
slaveof 192.168.2.101 6379  #此步最关键,添加上master的IP或主机及端口号

3. 启动redis服务
--启动master节点
[root@rac1 ~]# redis-server /etc/redis_master.conf > redis_master.log 2>&1 &  #&可以使命令在后台的执行,不影响屏幕使用。
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 2.6.8 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
(    '      ,       .-`  | `,    )     Running in stand alone mode
|`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
|    `-._   `._    /     _.-'    |     PID: 477
  `-._    `-._  `-./  _.-'    _.-'                                   
|`-._`-._    `-.__.-'    _.-'_.-'|                                 
|    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
|`-._`-._    `-.__.-'    _.-'_.-'|                                 
|    `-._`-._        _.-'_.-'    |                                 
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                          
              `-.__.-'                                               
[477] 12 Mar 16:43:30.319 # Server started, Redis version 2.6.8
[477] 12 Mar 16:43:30.319 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
[477] 12 Mar 16:43:30.319 * The server is now ready to accept connections on port 6379
[root@rac1 ~]# ps -ef|grep redis
root      5930 14334  0 16:56 pts/1    00:00:02 redis-server /etc/redis_master.conf
root      7250 14334  0 17:03 pts/1    00:00:00 grep redis

--启动slave节点
[root@rac2 ~]# redis-server /etc/redis_slave.conf > redis_slave.log 2>&1 &
[1] 32507
[32507] 12 Mar 17:51:55.346 * Max number of open files set to 10032
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 2.6.8 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                                   
(    '      ,       .-`  | `,    )     Running in stand alone mode
|`-._`-...-` __...-.``-._|'` _.-'|     Port: 6389
|    `-._   `._    /     _.-'    |     PID: 32507
  `-._    `-._  `-./  _.-'    _.-'                                   
|`-._`-._    `-.__.-'    _.-'_.-'|                                 
|    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
|`-._`-._    `-.__.-'    _.-'_.-'|                                 
|    `-._`-._        _.-'_.-'    |                                 
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                          
              `-.__.-'                                               
[32507] 12 Mar 17:51:55.350 # Server started, Redis version 2.6.8
[32507] 12 Mar 17:51:55.350 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
[32507] 12 Mar 17:51:55.350 * The server is now ready to accept connections on port 6389
[32507] 12 Mar 17:51:56.348 * Connecting to MASTER...
[32507] 12 Mar 17:51:56.349 * MASTER <-> SLAVE sync started
[32507] 12 Mar 17:51:56.495 * Non blocking connect for SYNC fired the event.
[32507] 12 Mar 17:51:57.014 * Master replied to PING, replication can continue...
[32507] 12 Mar 17:51:57.028 * MASTER <-> SLAVE sync: receiving 18 bytes from master
[32507] 12 Mar 17:51:57.029 * MASTER <-> SLAVE sync: Loading DB in memory
[32507] 12 Mar 17:51:57.037 * MASTER <-> SLAVE sync: Finished with success

[root@rac2 ~]# ps -ef|grep redis
root       321 29770  0 17:54 pts/1    00:00:00 grep redis
root     32507 29770  0 17:51 pts/1    00:00:00 redis-server /etc/redis_slave.conf

4. 验证主从复制
--master节点数据输入
[root@rac1 ~]# telnet 192.168.2.101 6379
Trying 192.168.2.101...
Connected to rac1.localdomain (192.168.2.101).
Escape character is '^]'.
rpush data 1
:1
rpush data 1
:2
lrange data 0 -1
*2
$1
1
$1
1

--slave节点验证
[root@rac1 ~]# telnet 192.168.2.102 6389
Trying 192.168.2.102...
Connected to rac2.localdomain (192.168.2.102).
Escape character is '^]'.
lrange data 0 -1
*2
$1
1
$1
1
quit
+OK
Connection closed by foreign host.

1.jpg



2.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1、安装文档 2、 实验:(1) 启动redis(2) 停止redis(3)测试连接(发送命令的两种方法) 字符串类型: (4)设置一个键,获得该键值,并判断一个键是否存在 (5)删除键 (6)增和减 (7) 向尾部追加值 (8) 获取字符串长度 (9) 同时获得/设置多个键值 (10) 位操作 散列类型: (11) 为键值car设置price、name、model等“属性” (12) 判断model字段是否存在,不存在的话添加该字段,最后删除 列表类型: (13)向列表添加元素、弹出元素、获取表中元素个数、获得列表片段 (14)获得/设置指定索引的元素值 集合类型: (16) 增加或删除元素以及获得集合中所有元素: (17) 判断元素是否存在于集合中: (18) 集合的运算差sdiff,交sinter,并sunion 有序集合类型: (19) 增加元素、获得元素分数、获得排名在某个范围的元素列表、获得制定分数范围的元素 事务: (20)MULTI开启事务,EXEC结束事务 (21)错误处理:语法错误(命令本身错误)和运行错误(命令使用类型错误) (22)watch命令(监控作用) (23)Expire,ttl,persist命令控制键的存活时间 (24)Sort排序命令 (25)构造如图表结构: (26) Sort key1 by key2 将key1按照key2的大小进行排序 (27)get:sort key1 get key2 按照key1大小进行排序,将key2结果显示出来 (28)sort、by、get结合使用: (29)获取外部键但不进行排序: (30)将下表存在哈希结构中,并使用sort、by、get方法进行操作 (31)Store:将排完序的结果进行存储 (32)订阅者-发布者模式 任务队列: (33)优先级队列:
Redis主从复制是指将一个Redis服务器作为主节点,其他Redis服务器作为从节点,实现数据的同步和备份的过程。主从复制能够提高系统的可用性和性能,并且可以实现数据的读写分离。 在Redis中,主从复制配置需要进行以下几个步骤: 1. 启动Redis服务器:首先需要启动多个Redis服务器,其中一个作为主节点,其他的作为从节点。可以通过命令`redis-server redis.conf`来启动Redis服务器。 2. 配置主节点:在主节点的配置文件中,需要开启主从复制功能,并设置一个唯一的复制ID。可以通过修改配置文件`redis.conf`中的`replicaof`参数来指定主节点的IP和端口。 3. 配置从节点:在从节点的配置文件中,需要指定主节点的IP和端口,以及设置复制的密码(如果有密码)。可以通过修改配置文件`redis.conf`中的`replicaof`参数来指定主节点的IP和端口,并设置`masterauth`参数来设置密码。 4. 启动从节点:在从节点的服务器上启动Redis服务器,配置文件中的复制配置将会生效。 5. 验证主从复制:可以使用`info replication`命令来查看主从节点的复制状态。如果主从复制配置正确,从节点的复制状态应该显示为`connected`。 通过以上步骤,就可以完成Redis主从复制配置。主节点将会将数据同步给从节点,实现数据的备份和读写分离,提高系统的可用性和性能。 然而,主从复制也有一些缺点。其中一个缺点是主节点的单点故障问题,如果主节点出现故障,整个系统的可用性将会受到影响。另外,主从复制只能实现数据的异步复制,从节点的数据可能存在一定的延迟。此外,主从复制在网络环境不稳定或者带宽有限的情况下,可能会导致数据同步的延迟或者失败。 因此,在使用主从复制时,需要权衡可用性、数据一致性和延迟等因素,选择合适的配置和部署方式。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [手把手教你配置Redis主从复制(含详细图文)](https://blog.csdn.net/weixin_34332998/article/details/123610725)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Redis主从复制配置](https://blog.csdn.net/qq_45476645/article/details/126929140)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值