网友通过本文主要向大家介绍了redis主从切换,redis 切换数据库,redis 切换库,redis主备切换,redis 切换db等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
redis master-slave 切换演练
redis master-slave 切换演练环境
IP地址 | 端口 | 属性 |
192.168.31.208 | 6379 | master |
192.168.31.208 | 6378 | slave |
192.168.31.209 | 6379 | master |
192.168.31.209 | 6378 | slave |
192.168.31.210 | 6379 | master |
192.168.31.210 | 6378 | slave |
环境变量
PATH=$PATH:$HOME/cpprelease/redis-3.0.2/src/:$HOME/bin
BASE_PATH=/home/beidou_soa/cpprelease/
export PATH
alias redisstart1='cd ~/redis/ && redis-server $BASE_PATH/cfg/redis/redis1.conf && cd -'
alias redisstart2='cd ~/redis/ && redis-server $BASE_PATH/cfg/redis/redis2.conf && cd -'
alias redisstop1='cd ~/redis/ && redis-cli -p 6379 shutdown && cd -'
alias redisstop2='cd ~/redis/ && redis-cli -p 6378 shutdown && cd -'
1.检查环境[beidou_soa@localhost~]$redis-trib.rbcheck192.168.31.208:6379Connectingtonode192.168.31.208:6379:OKConnectingtonode192.168.31.210:6378:OKConnectingtonode192.168.31.209:6378:OKConnectingtonode192.168.31.210:6379:OKConnectingtonode192.168.31.209:6379:OKConnectingtonode192.168.31.208:6378:OK>>>PerformingClusterCheck(usingnode192.168.31.208:6379)M:273aa3c0416e7d1795ce678d56bd2db148613f7e192.168.31.208:6379slots:10923-16383(5461slots)master1additionalreplica(s)S:08f61dcd66389dae5c39e375d4f52e1defa77ec1192.168.31.210:6378slots:(0slots)slavereplicates40cecda23f32cb3b8ff60752c00514f2d7d9c3d0S:d8e8369bfdbf4f9e0bebd04911181785e3ee1129192.168.31.209:6378slots:(0slots)slavereplicates4f11d4265178d72e0ccf7edf0ddabf835e9c56dfM:40cecda23f32cb3b8ff60752c00514f2d7d9c3d0192.168.31.210:6379slots:0-5460(5461slots)master1additionalreplica(s)M:4f11d4265178d72e0ccf7edf0ddabf835e9c56df192.168.31.209:6379slots:5461-10922(5462slots)master1additionalreplica(s)S:4b6e2b13b1be1a081db2153dc4beaf430b489605192.168.31.208:6378slots:(0slots)slavereplicates273aa3c0416e7d1795ce678d56bd2db148613f7e[OK]Allnodesagreeaboutslotsconfiguration.>>>Checkforopenslots...>>>Checkslotscoverage...[OK]All16384slotscovered.
[beidou_soa@localhost~]$redis-cli-c-p6379127.0.0.1:6379>127.0.0.1:6379>127.0.0.1:6379>gettestkey001(nil)127.0.0.1:6379>127.0.0.1:6379>127.0.0.1:6379>settestkey002testvalue002->Redirectedtoslot[401]locatedat192.168.31.210:6379OK192.168.31.210:6379>192.168.31.210:6379>gettestkey002"testvalue002"192.168.31.210:6379>settestkey003testvalue003OK
2.准备关闭208的master[beidou_soa@localhost~]$redisstop1
3.检查集群状态查看slave的日志[beidou_soa@localhostredis]$vimredis-6378.log6874:S30Dec15:28:04.755#ErrorconditiononsocketforSYNC:Connectionrefused6874:S30Dec15:28:05.758*ConnectingtoMASTER192.168.31.208:63796874:S30Dec15:28:05.758*MASTER<->SLAVEsyncstarted6874:S30Dec15:28:05.759#ErrorconditiononsocketforSYNC:Connectionrefused6874:S30Dec15:28:06.647*FAILmessagereceivedfrom40cecda23f32cb3b8ff60752c00514f2d7d9c3d0about273aa3c0416e7d1795ce678d56bd2db148613f7e6874:S30Dec15:28:06.647#Clusterstatechanged:fail6874:S30Dec15:2