win7+centos
配置redis主从IP和port:
master and slave | ip | port |
master | 127.0.0.1--改成局域网ip192.168.176.128 | 6379 |
slave1 | 127.0.0.1--改成局域网ip192.168.176.128 | 6380 |
slave2 | 127.0.0.1--改成局域网ip192.168.176.128 | 6381 |
- 下载文件:
wget http://download.redis.io/releases/redis-3.2.1.tar.gz
- 解压缩:
tar zxvf redis-3.2.1.tar.gz
mv redis-3.2.1 redis-3.2.1.master
tar zxvf redis-3.2.1.tar.gz
mv redis-3.2.1 redis-3.2.1.slave-1
tar zxvf redis-3.2.1.tar.gz
mv redis-3.2.1 redis-3.2.1.slave-2
![](https://i-blog.csdnimg.cn/blog_migrate/04ecd8a13ec6f13e45d4aff56bc8242c.png)
- 执行make和make test
分别进入文件夹:
redis
-
3.2
.
1.master、
redis
-
3.2
.
1.slave-1和
redis
-
3.2
.
1.slave的src目录,执行命令:
cd redis-3.2.1.master/src
make
make test
//其他两个目录执行相同的操作
执行成功后会提示:
![](https://i-blog.csdnimg.cn/blog_migrate/bbf2c70a9611a5f0205bc5876554da24.png)
修改配置文件:redis.conf
配置文件位于:(需要修改3个配置文件)
![](https://i-blog.csdnimg.cn/blog_migrate/62db0fb5f5055a0b321c377857898583.png)
主要修改4个参数:
- port;
- logfile;
- slaveof;
- pidfile;
- daemonize(配置以daemon方式运行)
- 修改master文件:redis.conf:
配置文件的其他部分不要改动,修改如下内容:
port 6379
pidfile /var/run/redis_6379.pid
# slaveof <masterip> <masterport>
logfile "/data/logs/redis.master.log"
daemonize yes
- 修改slave1的配置文件:
port 6380
pidfile /var/run/redis_6380.pid
slaveof 127.0.0.1 6379
logfile "/data/logs/redis.slave-6380.log"
daemonize yes
- 修改slave2的配置文件:
port 6381
pidfile /var/run/redis_6381.pid
slaveof 127.0.0.1 6379
logfile "/data/logs/redis.slave-6381.log"
daemonize yes
注意:在 / 根目录在建立
/data/logs/redis.master.log
/data/logs/redis.slave-6380.log
/data/logs/redis.slave-6381.log
三、开启master和slave1、slave2
- 开启master (salve的开启方式与此类似)
转到目录:redis-3.2.1.master 下(slave则转到相应的目录),执行:
./src/redis-server redis.conf
运行成功后,查看cat
/data/logs/下的master的 logfile
可以看到如下界面:
![](https://i-blog.csdnimg.cn/blog_migrate/94e9109020b844501c3b671cd7aab986.png)
- 开启slave1
可以看到slave1开启的情况,如下图:
![](https://i-blog.csdnimg.cn/blog_migrate/8f87b5cbd2ecfead8c3b5b717b815b84.png)
同时看到master的日志如下:
![](https://i-blog.csdnimg.cn/blog_migrate/4a59db3abf2e9d0ef03e870e2ee74890.png)
- 开启slave2
可以看到slave2开启的情况,如下图:
![](https://i-blog.csdnimg.cn/blog_migrate/f5bc5ec7d6410cc79948f1488a1c7369.png)
同时看到master的日志如下:
![](https://i-blog.csdnimg.cn/blog_migrate/5b4182d8fe77ca1e0a3de9dd3f067e63.png)
- 查看运行情况
![](https://i-blog.csdnimg.cn/blog_migrate/a1d8e7b57ac4c3bd27ad1da9bba6cf94.png)
四、客户端连接-测试同步
- 连接master客户端,并创建数据
redis-cli -h 127.0.0.1 -p 6379
![](https://i-blog.csdnimg.cn/blog_migrate/6c6a33fd01fe8649fb6a569f9c2c27a2.png)
- 连接slave,并查看数据同步情况:
![](https://i-blog.csdnimg.cn/blog_migrate/0ef4b2b153378a34e6b3e55a634b0aa8.png)
下面是另一个slave:
![](https://i-blog.csdnimg.cn/blog_migrate/d9989966a1e7e7b50696997b3f781e93.png)
Slave不可以写,只可以读
当连接上redis的slave时,只可以读数据,不可以写数据:
![](https://i-blog.csdnimg.cn/blog_migrate/fded281f1f40ba9ca057b81316ab4f9f.png)
参考原文:http://www.cnblogs.com/ssslinppp/p/5661419.html