Linux系統(tǒng)下的redis的主從配置方法非常簡(jiǎn)單,下面給大家分享一下redis的主從配置方法具體的操作步驟
環(huán)境介紹:
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. 主節(jié)點(diǎn)配置
[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默認(rèn)的,可以不改
復(fù)制軟件到從節(jié)點(diǎn)
[root@rac1 opt]# scp -r redis-2.6.8 rac2:/opt
2. 從節(jié)點(diǎn)配置
[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節(jié)點(diǎn)的自定義端口
# slaveof <masterip> <masterport>slaveof 192.168.2.101 6379
此步最關(guān)鍵,添加上master的IP或主機(jī)及端口號(hào)
3. 啟動(dòng)redis服務(wù)
啟動(dòng)master節(jié)點(diǎn)
[root@rac1 ~]# redis-server /etc/redis_master.conf > redis_master.log 2>&1 &
&可以使命令在后臺(tái)的執(zhí)行,不影響屏幕使用。
_._ _.-``__ ''-._ _.-`` `. `_. ''-._ 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 redisroot 5930 14334 0 16:56 pts/1 00:00:02 redis-server /etc/redis_master.confroot 7250 14334 0 17:03 pts/1 00:00:00 grep redis
啟動(dòng)slave節(jié)點(diǎn)
[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 redisroot 321 29770 0 17:54 pts/1 00:00:00 grep redisroot 32507 29770 0 17:51 pts/1 00:00:00 redis-server /etc/redis_slave.conf
4. 驗(yàn)證主從復(fù)制
master節(jié)點(diǎn)數(shù)據(jù)輸入
[root@rac1 ~]# telnet 192.168.2.101 6379Trying 192.168.2.101...Connected to rac1.localdomain (192.168.2.101).Escape character is '^]'.rpush data 1:1rpush data 1:2lrange data 0 -1*2$11$11
slave節(jié)點(diǎn)驗(yàn)證
[root@rac1 ~]# telnet 192.168.2.102 6389Trying 192.168.2.102...Connected to rac2.localdomain (192.168.2.102).Escape character is '^]'.lrange data 0 -1*2$11$11quit+OKConnection closed by foreign host.
好了,到此主從redis已經(jīng)配置完成并成功運(yùn)行了,Linux系統(tǒng)下的redis主從配置方法操作很簡(jiǎn)單只要接步驟認(rèn)真配置基本都可以配置成功
新聞熱點(diǎn)
疑難解答
圖片精選