redis的主从配置方法详解
程序员文章站
2022-03-14 17:55:08
linux系统下的redis的主从配置方法非常简单,下面给大家分享一下redis的主从配置方法具体的操作步骤
环境介绍:
os:oracle linux 5.6
re...
linux系统下的redis的主从配置方法非常简单,下面给大家分享一下redis的主从配置方法具体的操作步骤
环境介绍:
os:oracle linux 5.6
redis:redis-2.6.8
master rac1 192.168.2.101
slave rac2 192.168.2.102
下载地址:
安装配置主从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.
好了,到此主从redis已经配置完成并成功运行了,linux系统下的redis主从配置方法操作很简单只要接步骤认真配置基本都可以配置成功
上一篇: 浅谈React之状态(State)