@a5635268
2017-05-15T14:10:04.000000Z
字数 670
阅读 1028
Redis
修改一台slave(设为A)为new master
1. 命令该服务不做其他redis服务的slave(自动变成master)
127.0.0.1:6380> slaveof no one
OK
2. 修改其readonly为no(主服务器,当然要准许写入)
127.0.0.1:6380> config get slave-read-only
1) "slave-read-only"
2) "yes"
127.0.0.1:6380> config set slave-read-only no
OK
3. 其他的slave再指向new master A
命令该服务为new master A
的slave
命令格式 slaveof IP port
127.0.0.1:6381> slaveof localhost 6380
OK
1. 如果不小心运行了flushall,怎么办?
如果不小心运行了flushall, 立即shutdown nosave ,关闭服务器
然后 手工编辑aof文件, 去掉文件中的 "flushall"相关行, 然后开启服务器,就可以导入回原来数据.
但如果
flushall
之后,系统恰好bgrewriteaof了,那么aof就清空了,数据丢失.
2. 不同的redis服务器之间的数据如何导入导出
导出:bgsave save
导入:先pkill掉redis进程,然后复制导出的rdb更名为本服务器config中指定的rdb名称
aof每秒一次自动导出或者手动重写bgrewriteaof,重写完pkill掉redis进程,同上操作即可;