Redis升级
Contents
创建一个新的实例
wget http://download.redis.io/redis-stable.tar.gz
tar -xvf redis-stable.tar.gz
cd redis-stable
make
make PREFIX=/some/other/directory install
启动slave实例
/some/other/directory/bin/redis-server /path/to/redis/redis.conf
开启复制
如果master要认证的话,要先认证下先,在slave的实例中的redis-cli启动后,输入以下命令
config set masterauth <password>
然后开始复制:
slaveof materIP masterPort
检查是否复制完成
检查从slave的日志文件,如果出现如下的提示,表明复制成功:
15293:S 23 Nov 16:21:37.560 * MASTER <-> SLAVE sync: Flushing old data
15293:S 23 Nov 16:21:37.560 * MASTER <-> SLAVE sync: Loading DB in memory
15293:S 23 Nov 16:21:50.799 * MASTER <-> SLAVE sync: Finished with success
查看主从的INFO信息
在主从实例中,都执行INFO
命令,查看键数等是否一致.
允许从实例进行写操作
默认情况下,redis的从slave实例是只读的,要开启写的话,可以在slave上执行:
config set slave-read-only no
配置你的应用(客户端使用新的slave的连接信息)
从切换为主
在slave上执行以下命令(要在没有命令执行的情况下进行切换,可以在slave上执行MONITOR
命令查看情况),如果没有的话,就可以切换了:
SLAVEOF NO ONE
即可关闭复制,成为主实例.