redis集群(主从复制)

2018-01-03 12:03:31来源:CSDN作者:shan_zhi_jun人点击

分享

14 redis集群(主从复制)

14.1 集群的优点
    1、主从备份 防止主机宕机 丢失数据 无法提供服务    2、读写分离,分担主机的任务    3、任务分离
14.2 集群搭建
    1、这里使用同一台机器不同的端口来作集群     192.168.202.136:6379 master     192.168.202.136:6380 slave1     192.168.202.136:6381 slave2    2、redis.conf 文件配置      由于需要使用三个不同端口开启三个redis。因此需要再复制两份redis.conf 分别重命名为:redis6380.conf,redis6381.conf。(当然也可以将redis整个目录复制成两份,这里只是复制redis.conf文件)      cp redis.conf redis6380.conf      cp redis.conf redis6381.conf    3、修改redis6380.conf文件       pidfile /var/run/redis_6380.pid       port 6380       dbfilename dump6380.rdb(这个是为了分担master的压力,也可以不配置)       slaveof 127.0.0.1 6379       slave-read-only yes     4、同上修改redis6381.conf文件     5、测试       5.1 启动服务        ./bin/redis-server redis.conf        ./bin/redis-server redis6380.conf        ./bin/redis-server redis6381.conf       5.2 启动客户端         ./bin/redis-cli -h 127.0.0.1 -p 6379         ./bin/redis-cli -h 127.0.0.1 -p 6380         ./bin/redis-cli -h 127.0.0.1 -p 6381      6、 redis设置密码        6.1、修改redis.conf:        requirepass 123456        6.2、修改redis6380.conf,redis6381.conf:        masterauth 123456      7、手动切换master主机        第一步:master主机 执行shutdown        第二步:slave0主机 执行 slaveof no one 使得该主机变为master        第三步:salve0主机 config set slave-read-only no 使得该主机可写        第四步:salve1主机 slaveof ip port 指向 第二步中主机的地址和端口      8、自动切换master主机,sentinel.conf 配置        第一步:复制两份sentinel.conf,分别为sentinel6380.conf,sentinel6381.conf        sentinel.conf配置说明:        1、sentinel monitor mymaster 127.0.0.1 6379 2         为哨兵起名字为mymaster,并且该哨兵监控的为6379这个redis服务,        2、sentinel down-after-millisenconds mymaster 30000        三十秒钟链接不上,认为宕机        3、sentinel can-failover mymaster yes        4、sentinel parallel-syncs mymaster 1(同时将1台指向master)        5、sentinel failover-timeout mymaster 900000(15分钟没有设置成功则认为失败)        6、redis.conf文件配置作为master的优先级slave-priority 100 (值越小,越优先)        第二步:编辑复制出来的两份sentinel文件,并修改端口
14.3 常用维护命令
    1.time    127.0.0.1:6379> time    1) "1514890285"  #秒数    2) "558782       # 微秒数    2.bgrewriteaof         立即重写aof    3.save :手动导出rdb,当前进程    4.lastsave :上次保存rdb时间    5.bgsave :手动导出rdb,后台进程    6.flushall:清空所有db的数据    7.flushdb:清空当前db的数据    8.showlog :    9.info:返回服务器的信息    10.config get key :获取redis.conf中的配置信息    11.config set key value:设置redis.conf中的配置信息
14.4 恢复数据
    当flushdb或者flushall后,发现误删,想要恢复数据?    第一步:立即shutdown nosave    第二步:vim aof日志文件 删除flushall或者flushdb命令    第三步:重启redis
14.5 将A服务器上的redis数据 导入到 B服务器上的redis
    A服务器:    第一步:执行bgsave    第二步:复制一份rdb文件,提供给B服务器使用(这里需要将,redis-server关闭,否则复制的rdb文件是有问题的)    B服务器:    第一步:检查redis.conf文件中rdb的配置

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台