码迷,mamicode.com
首页 > 其他好文 > 详细

redis主从配置

时间:2016-02-29 00:46:14      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:redis

  • 两台服务器: master (192.168.0.196) 和 slave (192.168.31.102)

  • 分别按照之前介绍的步骤安装好redis并启动

  • master 配置文件不用动

  • slave 配置文件上加一行   

  • slaveof  192.168.31.105 6379

  • masterauth  passwd  //如果主上设置了密码,要加这行

  • 分别启动master和slave

从redis的配置文件

[root@slave ~]# vim  /usr/local/redis/etc/redis.conf

daemonize yes
pidfile /usr/local/redis/var/redis.pid
port 6379
timeout 300
loglevel debug
logfile /usr/local/redis/var/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /usr/local/redis/var/
appendonly no
appendfsync always
slaveof 192.168.0.196 6379
masterauth  caimz

技术分享

查看从redis的log日志

[root@slave ~]# tail /usr/local/redis/var/redis.log
[4760] 28 Feb 18:41:13.358 * Full resync from master: be15a09aa9c862e88b19b2ca8177dbe24db12bac:1
[4760] 28 Feb 18:41:13.438 * MASTER <-> SLAVE sync: receiving 118 bytes from master
[4760] 28 Feb 18:41:13.438 * MASTER <-> SLAVE sync: Flushing old data
[4760] 28 Feb 18:41:13.438 * MASTER <-> SLAVE sync: Loading DB in memory
[4760] 28 Feb 18:41:13.439 * MASTER <-> SLAVE sync: Finished with success

[4760] 28 Feb 18:41:16.217 - Accepted 127.0.0.1:56003
[4760] 28 Feb 18:41:18.403 - DB 0: 8 keys (0 volatile) in 8 slots HT.
[4760] 28 Feb 18:41:18.403 - 2 clients connected (0 slaves), 487504 bytes in use
[4760] 28 Feb 18:41:23.458 - DB 0: 8 keys (0 volatile) in 8 slots HT.
[4760] 28 Feb 18:41:23.458 - 2 clients connected (0 slaves), 487512 bytes in use
[root@slave ~]#

红色部分就可以判断是主从同步了。

  • 测试主从同步:

主:新建一个参数。

[root@master ~]# /usr/local/redis/bin/redis-cli -a caimz
127.0.0.1:6379> set nanjing KO
OK
127.0.0.1:6379> get nanjing
"KO"

从:登陆查看

[root@slave ~]# /usr/local/redis/bin/redis-cli  -a caimz

127.0.0.1:6379> get nanjing
"KO"#此时和主的数值一致。

  • 查看库里所有的key对应的value

主:

127.0.0.1:6379> keys *
1) "nanjing"
2) "key1"
3) "leco"
4) "key3"
5) "caiting"
6) "zmj"
7) "key2"
8) "key"
9) "k1"

从:

127.0.0.1:6379> keys *
1) "key2"
2) "k1"
3) "key"
4) "leco"
5) "caiting"
6) "nanjing"
7) "key1"
8) "zmj"
9) "key3"

主从对应一样.同步。

主:

127.0.0.1:6379> sadd set1 111
(integer) 1
127.0.0.1:6379> sadd set1 22
(integer) 1
127.0.0.1:6379> sadd set1 333
(integer) 1

从:

127.0.0.1:6379> keys *
1) "set1"
2) "key2"
3) "k1"
4) "key"
5) "leco"
6) "caiting"
7) "nanjing"
8) "key1"
9) "zmj"
10) "key3"
127.0.0.1:6379> smembers set1
1) "22"
2) "111"
3) "333"

#就是主上设置的参数

  • slave-read-only yes  //让从只读

  • repl-ping-slave-period 10  //设置slave向master发起ping的频率,每10s发起一次

  • repl-timeout 60 //设置slave ping不通master多少s后就超时

  • repl-disable-tcp-nodelay no //是否开启tcp_nodelay,开启后将会使用更少的带宽,但会有延迟,所以建议关闭

  • repl-backlog-size 1mb //同步队列的长度,backuplog是master的一个缓冲区,主从断开后,master会先把数据写到缓冲区,slave再次连接会从缓冲区中同步数据

  • repl-backlog-ttl 3600  //主从断开后,缓冲区的有效期,默认1小时

  • slave-priority 100 //多个slave是可以设置优先级的,数值越小优先级越高,应用于集群中,支持slave切换为master,优先级最高的才会切换

  • min-slaves-to-write 3  //和下面的一起使用,它的意思是master发现有超过3个slave的延迟高于10s,那么master就会暂时停止写操作。这两个数值任何一个为0,则关闭该功能,默认第一数值是0。

  • min-slaves-max-lag 10 


redis主从配置

标签:redis

原文地址:http://caimengzhi.blog.51cto.com/9787265/1745851

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!