Redis单机配置多实例,实现主从同步
版權(quán)聲明:本文為博主原創(chuàng)文章,歡迎轉(zhuǎn)載,轉(zhuǎn)載請(qǐng)保留或注明出處
本文轉(zhuǎn)自:http://www.cnblogs.com/lgeng/p/6623336.html?
?
一,單機(jī)多實(shí)例:
Redis官網(wǎng): https://redis.io/
1,安裝:
啟動(dòng):(默認(rèn)啟動(dòng)6379端口)
[root@localhost redis]# /usr/local/redis/src/redis-server?
?
??
??
2,驗(yàn)證:使用 redis-cli命令驗(yàn)證 (注意路徑)
[root@localhost src]# /usr/local/redis/src/redis-cli -p 6379 127.0.0.1:6379> keys * (empty list or set) 127.0.0.1:6379> set k1 v1 OK 127.0.0.1:6379> keys * 1) "k1" 127.0.0.1:6379> get k1 "v1" 127.0.0.1:6379> 127.0.0.1:6379>
?
3,配置環(huán)境變量?
輸入redis-server和redis-cli命令,每次輸入完整的路徑
將路徑添加到PATH變量中
?
?
?
二,單機(jī)多實(shí)例
創(chuàng)建不同實(shí)例的數(shù)據(jù)存放目錄 分別創(chuàng)建6380,6381,6382 三個(gè)實(shí)例
每個(gè)實(shí)例目錄中分別創(chuàng)建 conf,db,log目錄,并拷貝配置文件到conf中
?
?
修改配置文件:
將redis.conf修改為對(duì)應(yīng)的實(shí)例參數(shù),修改部分如下
?
啟動(dòng)實(shí)例:
[root@localhost redis]# redis-server /data/redis/6380/conf/redis.conf [root@localhost redis]# redis-server /data/redis/6381/conf/redis.conf [root@localhost redis]# redis-server /data/redis/6382/conf/redis.conf [root@localhost redis]# [root@localhost redis]# netstat -ntlp | grep -E ":6380|:6381|:6382" tcp 0 0 127.0.0.1:6380 0.0.0.0:* LISTEN 14301/redis-server tcp 0 0 127.0.0.1:6381 0.0.0.0:* LISTEN 14305/redis-server tcp 0 0 127.0.0.1:6382 0.0.0.0:* LISTEN 14309/redis-server [root@localhost redis]# [root@localhost redis]#?
驗(yàn)證(略) redis-cli -p 6380 ; redi-cli -p 6381 ; redis-cli -p 6382
?
?
三,配置主從同步
修改從庫(kù)配置,6380實(shí)例為主庫(kù), ?從庫(kù)為 6381,6382
?
?驗(yàn)證:
先在主庫(kù)上info一下
[root@localhost 6380]# redis-cli -p 6380 "info" . .此處略去n行 . # Replication role:master <== 角色:master connected_slaves:2 <== slave鏈接數(shù) 2 slave0:ip=127.0.0.1,port=6381,state=online,offset=141,lag=1 <== slave 的信息 slave1:ip=127.0.0.1,port=6382,state=online,offset=141,lag=1 master_repl_offset:141 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:2 repl_backlog_histlen:140?
看看從庫(kù)
[root@localhost 6381]# redis-cli -p 6381 "info" ... .此處略去n行 .... # Replication role:slave <==角色 slave master_host:127.0.0.1 <==master主機(jī) master_port:6380 <== master端口 master_link_status:up <== 鏈接狀態(tài) up master_last_io_seconds_ago:5 master_sync_in_progress:0 slave_repl_offset:673 slave_priority:100 slave_read_only:1 connected_slaves:0 master_repl_offset:0 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0?
[root@localhost 6382]# redis-cli -p 6382 "info" ... .此處略去n行 .... # Replication role:slave master_host:127.0.0.1 master_port:6380 master_link_status:up master_last_io_seconds_ago:4 master_sync_in_progress:0 slave_repl_offset:911 slave_priority:100 slave_read_only:1 connected_slaves:0 master_repl_offset:0 repl_backlog_active:0 repl_backlog_size:1048576 repl_backlog_first_byte_offset:0 repl_backlog_histlen:0?
在主庫(kù)上寫(xiě)入數(shù)據(jù): [root@localhost 6380]# redis-cli -p 6380 127.0.0.1:6380> set k1 v1 OK 127.0.0.1:6380> keys * 1) "k1" 127.0.0.1:6380> get k1 "v1" 127.0.0.1:6380>
從庫(kù)上查看是否已同步 [root@localhost 6381]# redis-cli -p 6381 127.0.0.1:6381> keys * 1) "k1" 127.0.0.1:6381> get k1 "v1" 127.0.0.1:6381> 127.0.0.1:6381> exit [root@localhost 6381]# redis-cli -p 6382 127.0.0.1:6382> keys * 1) "k1" 127.0.0.1:6382> get k1 "v1" 127.0.0.1:6382>
?
?
主庫(kù)刪除數(shù)據(jù):
[root@localhost 6380]# redis-cli -p 6380 127.0.0.1:6380> keys * 1) "k1" 127.0.0.1:6380> del k1 (integer) 1 127.0.0.1:6380> keys * (empty list or set) 127.0.0.1:6380>?
從庫(kù)查看?
[root@localhost 6381]# redis-cli -p 6381 127.0.0.1:6381> keys * (empty list or set) 127.0.0.1:6381> exit [root@localhost 6381]# redis-cli -p 6382 127.0.0.1:6382> keys * (empty list or set) 127.0.0.1:6382> 127.0.0.1:6382> exit [root@localhost 6381]#?
END
本文轉(zhuǎn)自:http://www.cnblogs.com/lgeng/p/6623336.html?
轉(zhuǎn)載于:https://www.cnblogs.com/lgeng/p/6623336.html
總結(jié)
以上是生活随笔為你收集整理的Redis单机配置多实例,实现主从同步的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Codeforces Round #40
- 下一篇: javase学习第10天(形式参数和返回