1. 程式人生 > >配置Redis主從服務器(有圖)

配置Redis主從服務器(有圖)

grep directory rec please 服務器軟件 tar.gz water nag 計數器

案例1:Tomcat實現session共享 案例2:源碼安裝Redis緩存服務 案例3:常用Redis數據庫操作指令 案例4:配置Redis主從服務器

1 案例1:Tomcat實現session共享
1.1 問題

沿用練習三,通過為在Tomcat上部署msm(memcached-session-manager)實現session會話共享,本案例需要在練習三的基礎上實現:

配置Tomcat支持memcached
客戶端訪問兩臺不同的後端Web服務器時,Session ID信息一致

1.2 方案

在練習三拓撲的基礎上,Nginx服務器除了承擔調度器外,還需要擔任memcached數據庫的角色,並在兩臺Tomcat服務器上部署msm實現session會話共享。拓撲結構如圖-4所示。

技術分享圖片
圖-4
1.3 步驟

實現此案例需要按照如下步驟進行。

步驟一:構建memcached服務

1)安裝Memcached服務

[root@svr5 ~]# yum –y install memcached

2)啟動服務並查看網絡連接狀態驗證是否開啟成功:

[root@svr5 ~]# systemctl start memcached
[root@svr5 ~]# netstat  -anptu  |  grep memcached
tcp    0    0 0.0.0.0:11211        0.0.0.0:*        LISTEN        2839/memcached      
tcp    0    0 :::11211            :::*                LISTEN        2839/memcached      
udp    0    0 0.0.0.0:11211        0.0.0.0:*                    2839/memcached      
udp    0    0 :::11211            :::*                            2839/memcached

步驟二:在Tomcat服務器上部署msm

註意:這些操作在兩臺後端Web服務器上均需要執行,以下操作以Web1(192.168.2.100)服務器為例。

1)安裝msm

[root@svr100 ~]# cd  lnmp-soft/session
[root@svr100 session]# ls *.jar
asm-5.1.jar                              minlog-1.3.0.jar
kryo-3.0.3.jar                           msm-kryo-serializer-1.9.2.jar
kryo-serializers-0.34.jar                reflectasm-1.11.1.jar
memcached-session-manager-1.9.2.jar      spymemcached-2.11.1.jar
memcached-session-manager-tc8-1.9.2.jar
[root@svr100 session]# cp *.jar /usr/local/tomcat/lib/

2)修改Tomcat配置文件,連接memcached服務器

[root@svr100 ~]# ~]# vim  /usr/local/tomcat/conf/context.xml
<Context>
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
    memcachedNodes="mem1:192.168.2.5:11211"
    requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
    transcoderFactoryClass="de.javakaffee.web.msm.JavaSerializationTranscoderFactory"/>
</Context>
[root@localhost ~]# /usr/local/tomcat/bin/shutdown.sh 
[root@localhost ~]# /usr/local/tomcat/bin/startup.sh

步驟三:客戶端測試

客戶端使用瀏覽器訪問兩臺不同的Web服務器。

操作步驟與練習三一致,最終可以獲得相關的Session ID信息。
2 案例2:源碼安裝Redis緩存服務
2.1 問題

本案例要求先快速搭建好一臺Redis服務器,並測試該緩存服務器:

設置變量test,值為123
查看變量test的值
設置計數器mycounter
對計數器mycounter進行增量加1操作

2.2 方案

使用源碼包安裝Redis服務器,使用redis-cli客戶端工具連接Redis服務器並測試緩存數據庫。

使用redis-cli命令測試Redis服務時可以使用的命令列表如表-1所示。

表-1 Redis命令列表
2.3 步驟

實現此案例需要按照如下步驟進行。

步驟一:安裝Redis服務器

1)源碼安裝Redis軟件

[root@svr5 ~]# tar -xzf redis-3.0.6.tar.gz
[root@svr5 ~]# cd redis-3.0.6
[root@svr5 ~]# make 
[root@svr5 ~]# make install
[root@svr5 ~]# ./utils/install_server.sh            //初始化
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379]    //設置端口號,默認即可
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] //配置文件
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] //日誌文件
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
//數據目錄
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] 
//Redis服務器軟件存儲路徑
Selected config:
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
//確認信息是否正確,回車確認即可
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!
[root@svr5 ~]# ls /etc/init.d/redis_6379         //查看啟動腳本

2)啟用Redis服務並查看監聽端口狀態

[root@svr5 ~]# /etc/init.d/redis_6379 restart
[root@srv5 ~]# netstat -nutlp |grep redis
tcp        0      0 0.0.0.0:6379    0.0.0.0:*    LISTEN      5749/redis-server * 
tcp        0      0 :::6379            :::*            LISTEN      5749/redis-server *

步驟二:測試緩存數據庫

1)使用redis-cli測試數據庫

[root@srv5 ~]# redis-cli 
127.0.0.1:6379> ping                        //測試服務器
PONG
127.0.0.1:6379> set test 123                //設置變量
OK
127.0.0.1:6379> get test                    //查看test值
"123"
127.0.0.1:6379> INCR mycounter                //設置計數器mycounter
(integer) 1
127.0.0.1:6379> INCR mycounter                //對計數器mycounter進行自增運算
(integer) 2

3 案例3:常用Redis數據庫操作指令
3.1 問題

沿用練習一,通過redis-cli工具,對Redis數據庫各數據類型進行增刪改查等操作,要求如下:
分別對Strings、Hash表、List列表三種數據類型進行增刪改查等常見操作
設置數據緩存時間
清空所有數據
對數據庫操作

3.2 方案

使用redis-cli客戶端工具連接Redis服務器並測試緩存數據庫。

使用redis-cli命令測試Redis服務是可以使用的命令列表如表-2所示。

表-2 Redis命令列表
3.3 步驟

實現此案例需要按照如下步驟進行。

步驟一:常用Redis數據操作指令

1)使用redis-cli測試數據庫(字符串常見操作指南)

[root@srv5 ~]# redis-cli 
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set string1 "hello the word"    //設置字符串變量
OK
127.0.0.1:6379> get string1                    //查看字符串變量
"hello the word"
127.0.0.1:6379> set string2 "hello" ex 5    //設置字符串變量,並設置過期時間為5秒
OK
127.0.0.1:6379> get string2                //查看字符串變量
"hello"
127.0.0.1:6379> get string2                //字符串過期後,查看該值為空
(nil)
127.0.0.1:6379> get string1
"hello the word"
127.0.0.1:6379> set string1 hello nx        //僅當string1不存在時,才執行set指令
(nil)
127.0.0.1:6379> set string1 hello xx        //僅當string1存在時,才執行set指令
OK
127.0.0.1:6379> get string1                     //查看修改後string1的值
"hello"
127.0.0.1:6379> set string1 "hello the world"    //修改string1的值
OK
127.0.0.1:6379> get string1
"hello the world"
127.0.0.1:6379> setrange string1 6 "Redis"        //從第6個字符開始替換string1的值
(integer) 15
127.0.0.1:6379> get string1
"hello Redisorld"
127.0.0.1:6379> strlen string1                    //計算string1的長度
(integer) 15
127.0.0.1:6379> append string1 xxx                //對string1進行追加操作
(integer) 18
127.0.0.1:6379> get string1
"hello Redisorldxxx"
127.0.0.1:6379> append string1 " xxx"
(integer) 22
127.0.0.1:6379> get string1
"hello Redisorldxxx xxx"
127.0.0.1:6379> setbit string2 0 1                //按位設置string2的值,0位為1
(integer) 0
127.0.0.1:6379> setbit string2 1 1                //按位設置string2的值,1位為1
(integer) 0
127.0.0.1:6379> setbit string2 2 1
(integer) 0
127.0.0.1:6379> setbit string2 3 0
(integer) 0
127.0.0.1:6379> get string2                    //不可以查看所有的值
"\xe0"
127.0.0.1:6379> bitcount string2                 //統計string2中1的個數
(integer) 3
127.0.0.1:6379> getbit string2 0                //查看string2第0位的值
(integer) 1
127.0.0.1:6379> getbit string2 1                //查看string2第1位的值
(integer) 1
127.0.0.1:6379> decr string3                    //遞減運算,初始值為0
(integer) -1
127.0.0.1:6379> decr string3
(integer) -2
127.0.0.1:6379> decr string3
(integer) -3
127.0.0.1:6379> decr string3
(integer) -4
127.0.0.1:6379> decr string3
(integer) -5
127.0.0.1:6379> set string4 10                    //自定義變量初始值為10
OK
127.0.0.1:6379> decr string4                    //對自定義變量進行遞減運算
(integer) 9
127.0.0.1:6379> decr string4
(integer) 8
127.0.0.1:6379> decr string4
(integer) 7
127.0.0.1:6379> decrby string4 2                //對變量進行遞減2運算
(integer) 5
127.0.0.1:6379> decrby string4 2
(integer) 3
127.0.0.1:6379> get string4
"3"
127.0.0.1:6379> set string5 "hello the world"        //設置字符串變量
OK
127.0.0.1:6379> getrange string5 0 4            //查看字串的第0至第4位
"hello"
127.0.0.1:6379> getrange string5 -3 -1            //查看字串的倒數第3位至倒數第1位
"rld"
127.0.0.1:6379> incr page                        //對變量進行遞增運算,初始值為0
(integer) 1
127.0.0.1:6379> incr page
(integer) 2
127.0.0.1:6379> incr page
(integer) 3
127.0.0.1:6379> incr page
(integer) 4
127.0.0.1:6379> set string6 10                    //設置字符串變量為10
OK
127.0.0.1:6379> incr string6                    //對變量進行遞增運算
(integer) 11
127.0.0.1:6379> incr string6
(integer) 12
127.0.0.1:6379> incrby string6 2                //對變量進行遞增2運算
(integer) 14
127.0.0.1:6379> incrby string6 2
(integer) 16
127.0.0.1:6379> incrby string6 2
(integer) 18
127.0.0.1:6379> incrby string6 2
(integer) 20
127.0.0.1:6379> set num 16.1                //設置浮點數變量
OK
127.0.0.1:6379> incrbyfloat num 1.1        //對浮點數進行遞增1.1運算
"17.2"
127.0.0.1:6379> incrbyfloat num 1.1
"18.3"
127.0.0.1:6379> incrbyfloat num 1.1
"19.4"
127.0.0.1:6379> incrbyfloat num 1.1
"20.5"

2)Hash表常見操作指南

127.0.0.1:6379> hset hkey google “www.g.cn”        
//設置hash表hkey,google列的值為www.g.cn
(integer) 1
127.0.0.1:6379> hset hkey baidu “www.baidu.com”
//設置hash表hkey,baidu列的值為www.baidu.com
(integer) 1
127.0.0.1:6379> hget hkey google        //查看hash表hkey中google列的值
"www.g.cn"
127.0.0.1:6379> hget hkey baidu        //查看hash表hkey中baidu列的值
"www.baidu.com"
127.0.0.1:6379> hmset site google "www.g.cn" baidu "www.baidu.com"
OK
//一次性設置hash表site的多個列與值
127.0.0.1:6379> hmget site google baidu
1) "www.g.cn"
2) "www.baidu.com"
//一次性查看hash表site的多個列值
127.0.0.1:6379> hgetall site                //查看site表中所有的列與值
1) "google"
2) "www.g.cn"
3) "baidu"
4) "www.baidu.com"
127.0.0.1:6379> hdel site google            //刪除site表中google列
(integer) 1
127.0.0.1:6379> hgetall site                //驗證刪除效果
1) "baidu"
2) "www.baidu.com"
127.0.0.1:6379> hmset site google "www.g.cn" baidu "www.baidu.com" sina "www.sina.com"
OK
127.0.0.1:6379> hkeys site                    //查看site表的所有列
1) "baidu"
2) "google"
3) "sina"
127.0.0.1:6379> hvals site                    //查看site表中所有列的值
1) "www.baidu.com"
2) "www.g.cn"
3) "www.sina.com"
127.0.0.1:6379> hmget site google baidu    //一次性查看site表中的多個列值
1) "www.g.cn"
2) "www.baidu.com"

3)List列表常見操作指南

127.0.0.1:6379> lpush list1 a b c            //創建列表並賦值
(integer) 3
127.0.0.1:6379> lpush list2 a                //創建列表並賦值
(integer) 1
127.0.0.1:6379> lpush list2 b                //給列表追加新值
(integer) 2
127.0.0.1:6379> lpush list2 c                //給列表追加新值
(integer) 3
127.0.0.1:6379> lrange list1 0 -1            
//查看列表list1中的所有值,從0位到最後1位
1) "c"
2) "b"
3) "a"
127.0.0.1:6379> lrange list1 1 2            //查看列表中第1和2位的值
1) "b"
2) "a"
127.0.0.1:6379> lrange list1 1 -1            //查看列表中第1至最後1位的值
1) "b"
127.0.0.1:6379> lrange list2 0 -1            //查看所有的值
1) "a"
2) "c"
3) "b"
4) "a"
127.0.0.1:6379> lrange list2 0 -1
1) "t"
2) "a"
3) "c"
4) "b"
5) "a"
127.0.0.1:6379> lpop list2                
//返回list2列表頭元素數據,並將該值從列表中刪除,key不存在則返回nil
"t"
127.0.0.1:6379> lrange list2 0 -1        //驗證結果
1) "a"
2) "c"
3) "b"
4) "a"
127.0.0.1:6379> lpop list2                //接續刪除頭部元素
"a"
127.0.0.1:6379> lrange list2 0 -1        //驗證結果
1) "c"
2) "b"
3) "a"
127.0.0.1:6379> lpop list2
"c"
127.0.0.1:6379> lrange list2 0 -1
1) "b"
2) "a"
127.0.0.1:6379> lrange list4 0 -1            //查看全部數據如下
1) "f"
2) "e"
3) "d"
4) "a"
5) "c"
127.0.0.1:6379> lindex list4 0                //返回list4中第0個值
"f"
127.0.0.1:6379> lindex list4 1                //返回list4中第1個值
"e"
127.0.0.1:6379> lindex list4 -1            //返回list4中最後1個值
"c"
127.0.0.1:6379> lindex list4 -2            //返回list4中倒數第2個值
"a"
127.0.0.1:6379> lrange list4 0 -1
1) "f"
2) "e"
3) "d"
4) "a"
5) "c"
127.0.0.1:6379> lset list4 0 test        //給list4的第0為插入值,值為test
OK
127.0.0.1:6379> lrange list4 0 -1        //驗證結果
1) "test"
2) "d"
3) "a"

4)其他操作指南

127.0.0.1:6379> set mykey "hello"            //定義字符串變量
OK
127.0.0.1:6379> get mykey                    //查看變量
"hello"
127.0.0.1:6379> del mykey                    //刪除變量
(integer) 1
127.0.0.1:6379> get mykey                    //驗證結果
(nil)
127.0.0.1:6379> set mykey "hello"            //定義變量即值
OK
127.0.0.1:6379> get mykey                    //查看有值
"hello"
127.0.0.1:6379> get mykey
"hello"
127.0.0.1:6379> expire mykey 10            //定義過期時間
(integer) 1
127.0.0.1:6379> get mykey                    //10秒後查看,無值
(nil)
127.0.0.1:6379> set mykey "hello"            //設置變量
OK
127.0.0.1:6379> persist mykey                //重新定義過期時間為,永久有效
(integer) 1
127.0.0.1:6379> get mykey
"hello"
127.0.0.1:6379> get mykey
"hello"
127.0.0.1:6379> ttl mykey
(integer) -1                            //永不過期
127.0.0.1:6379> expire mykey 10        //定義過期時間
(integer) 1
127.0.0.1:6379> ttl mykey                //查看過期時間
(integer) 9
127.0.0.1:6379> ttl mykey
(integer) 8
127.0.0.1:6379> ttl mykey
(integer) 7
127.0.0.1:6379> ttl mykey
(integer) 6
127.0.0.1:6379> ttl mykey
(integer) 5
127.0.0.1:6379> ttl mykey
(integer) 4
127.0.0.1:6379> ttl mykey
(integer) 3
127.0.0.1:6379> ttl mykey
(integer) 3
127.0.0.1:6379> ttl mykey
(integer) 2
127.0.0.1:6379> ttl mykey
(integer) 1
127.0.0.1:6379> ttl mykey
(integer) -2        //已經過期
127.0.0.1:6379> get mykey        //查看mykey的值已經為空
(nil)
127.0.0.1:6379> set mykey "hello"
OK
127.0.0.1:6379> keys *        //查看數據庫下所有數據
 1) "string6"
 2) "list7"
 3) "mykey"
 4) "string4"
 5) "db"
 6) "num"
 7) "result"
 8) "hkey"
 9) "string5"
10) "string1"
11) "bit1"
12) "page"
13) "bit2"
14) "site"
15) "string2"
16) "list1"
17) "string3"
18) "list6"
127.0.0.1:6379> keys li*
1) "list7"
2) "list1"
3) "list6"
127.0.0.1:6379> keys s*
1) "string6"
2) "string4"
3) "string5"
4) "string1"
5) "site"
6) "string2"
7) "string3"
127.0.0.1:6379> keys string[15]        //查看string1或string5
1) "string5"
2) "string1"
127.0.0.1:6379> keys string[0-9]        //查看string0值9的數據
1) "string6"
2) "string4"
3) "string5"
4) "string1"
5) "string2"
6) "string3"
127.0.0.1:6379> keys ?it*        //使用通配符所有數據
1) "bit1"
2) "bit2"
127.0.0.1:6379> select 1        //進入1數據庫,默認數據庫為0
OK
127.0.0.1:6379[1]> keys *        //在新數據庫中查看數據為空
(empty list or set)
127.0.0.1:6379[1]> set test "test"        //在數據庫1中創建變量
OK
127.0.0.1:6379[1]> get test            //查看變量的值
"test"
127.0.0.1:6379[1]> select 2            //進入2數據庫
OK
127.0.0.1:6379[2]> keys *                //查看所有數據
(empty list or set)
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> keys *
1) "test"
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
 1) "string6"
 2) "list7"
 3) "mykey"
 4) "string4"
 5) "db"
 6) "num"
 7) "result"
 8) "hkey"
 9) "string5"
10) "string1"
11) "bit1"
12) "page"
13) "bit2"
14) "site"
15) "string2"
16) "list1"
17) "string3"
18) "list6"
127.0.0.1:6379> flushall        //清空所有數據
OK
127.0.0.1:6379> keys *        //驗證結果
127.0.0.1:6379[2]> select 0
OK
127.0.0.1:6379> set mykey "hello"
OK
127.0.0.1:6379> keys *
1) "mykey"
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> keys *
1) "mykey"
127.0.0.1:6379> move mykey 1        //將數據庫0中的mykey變量移動至數據庫1
(integer) 1
127.0.0.1:6379> keys *        //在數據庫0中查看為空
(empty list or set)
127.0.0.1:6379> select 1        //進入數據庫1
OK
127.0.0.1:6379[1]> keys *        //查看所有數據庫
1) "mykey"
127.0.0.1:6379[1]> lpush cost 1 8 7 2 5        //創建列表cost
(integer) 5
127.0.0.1:6379[1]> sort cost                    //對列表值進行排序
1) "1"
2) "2"
3) "5"
4) "7"
5) "8"

4 案例4:配置Redis主從服務器
4.1 問題

本案例要求先快速搭建好兩臺Redis服務器,實現兩臺服務器之間自動數據同步,具體要求如下:

主服務器IP為192.168.2.100
從服務器IP為192.168.2.200
主服務器認證密碼為redis123
測試主從數據是否正常通過

4.2 方案

通過修改Redis配置文件,實現兩臺服務器之間的自動主從同步功能,方案拓撲如圖-1所示。
技術分享圖片

圖-1
4.3 步驟

實現此案例需要按照如下步驟進行。

步驟一:配置主從服務器設置

1)主服務器安裝Redis

[root@svr100 ~]# tar -xzf redis-3.0.6.tar.gz 
[root@svr100 ~]# cd redis-3.0.6
[root@svr100 ~]# make
[root@svr100 ~]# make install
[root@svr100 ~]# cd utils/
[root@svr100 ~]#./install_server.sh 
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379] 
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] 
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] 
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] 
Selected config:
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!

2)從服務器安裝Redis

[root@svr200 ~]# tar -xzf redis-3.0.6.tar.gz 
[root@svr200 ~]# cd redis-3.0.6
[root@svr200 ~]# make
[root@svr200 ~]# make install
[root@svr200 ~]# cd utils/
[root@svr200 ~]#./install_server.sh 
Welcome to the redis service installer
This script will help you easily set up a running redis server
Please select the redis port for this instance: [6379] 
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] 
Selected default - /etc/redis/6379.conf
Please select the redis log file name [/var/log/redis_6379.log] 
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379] 
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server] 
Selected config:
Port           : 6379
Config file    : /etc/redis/6379.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
Starting Redis server...
Installation successful!

步驟二:配置主從服務器設置

1)修改主服務器/etc/redis/6379.conf配置文件

[root@svr100 ~]# vim /etc/redis/6379.conf
requirepass redis123                               //設置服務器密碼
[root@svr100 ~]# /etc/init.d/redis_6379 restart       //重啟服務

2)修改主服務器的啟動腳本,添加服務器密碼

[root@svr100 ~]# vim  /etc/init.d/redis_6379
$CLIEXEC –a redis123  -p $REDISPORT shutdown

3)修改從服務器/etc/redis/6379.conf配置文件

[root@svr200 ~]# vim /etc/redis/6379.conf
slaveof 192.168.4.100 6379
masterauth redis123
[root@svr200 ~]# /etc/init.d/redis_6379  restart

步驟三:驗證效果

1) 主服務器操作

[root@svr100 ~]# redis-cli –h 192.168.4.100 –a redis123      //登錄主服務器設置數據
192.168.4.10:6379> set test 123456
OK

2) 從服務器操作

[root@svr200 ~]# redis-cli –h 192.168.4.200            //登錄主服務器查看數據同步效果
192.168.4.20:6379> set test
“123456”

配置Redis主從服務器(有圖)