配置环境:
Master服务器 : 192.168.189.129:44444
Slave服务器 : 192.168.189.131:44444
一:下载安装redis软件包,并解压
1
2
3
4
<code># cd /usr/local/src</code>
<code># wget http://redis.googlecode.com/files/redis-2.6.4.tar.gz </code>
<code># tar -zxvf redis-2.6.4.tar.gz</code>
<code># cd redis-2.6.4</code>
二:安装
redis软件不依赖其他的库,也不需要额外的编译参数,可直接make install进行安装
<code># make install</code>
三:创建所需目录与文件,便于管理
5
6
<code># mkdir -p /usr/local/redis/bin</code>
<code># mkdir -p /usr/local/redis/etc</code>
<code># mkdir -p /usr/local/redis/var</code>
<code># mkdir -p /usr/local/redis/data</code>
<code># cp redis.conf /usr/local/redis/etc/</code>
<code># cp /usr/local/bin/redis-* /usr/local/redis/bin</code>
四:配置redis.conf文件如下
Master服务器端:
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<code># grep -v '^#' redis.conf |grep -v '^$' </code>
<code>daemonize </code><code>yes</code>
<code>pidfile </code><code>/usr/local/redis/var/redis</code><code>.pid</code>
<code>#定义端口</code>
<code>port 44444</code>
<code>#绑定IP</code>
<code>bind 192.168.189.129</code>
<code>timeout 300 </code>
<code>loglevel notice</code>
<code>#指定日志目录</code>
<code>logfile </code><code>/usr/local/redis/var/redis</code><code>.log</code>
<code>databases 16</code>
<code>#配置持久化(rdb模式)</code>
<code>save 900 1</code>
<code>save 300 10</code>
<code>save 60 10000</code>
<code>stop-writes-on-bgsave-error </code><code>yes</code>
<code>rdbcompression </code><code>yes</code>
<code>rdbchecksum </code><code>yes</code>
<code>#定义数据文件和目录</code>
<code>dbfilename master.rdb</code>
<code>dir</code> <code>/usr/local/redis/data</code>
<code>slave-serve-stale-data </code><code>yes</code>
<code>slave-</code><code>read</code><code>-only </code><code>yes</code>
<code>slave-priority 100</code>
<code>appendonly no</code>
<code>appendfsync everysec</code>
<code>no-appendfsync-on-rewrite no</code>
<code>auto-aof-rewrite-percentage 100</code>
<code>auto-aof-rewrite-min-size 64mb</code>
<code>lua-</code><code>time</code><code>-limit 5000</code>
<code>slowlog-log-slower-than 10000</code>
<code>slowlog-max-len 128</code>
<code>hash</code><code>-max-ziplist-entries 512</code>
<code>hash</code><code>-max-ziplist-value 64</code>
<code>list-max-ziplist-entries 512</code>
<code>list-max-ziplist-value 64</code>
<code>set</code><code>-max-intset-entries 512</code>
<code>zset-max-ziplist-entries 128</code>
<code>zset-max-ziplist-value 64</code>
<code>activerehashing </code><code>yes</code>
<code>client-output-buffer-limit normal 0 0 0</code>
<code>client-output-buffer-limit slave 256mb 64mb60</code>
<code>client-output-buffer-limit pubsub 32mb 8mb 60</code>
Slave服务器端:
<code># grep -v '^#' redis.conf |grep -v '^$' </code>
<code>port 44444 </code>
<code>bind 192.168.189.131</code>
<code>logfile </code><code>/usr/local/redis/var/redis</code><code>.log </code>
<code>dbfilename slave.rdb</code>
<code>dir</code> <code>/usr/local/redis/data</code>
<code>slaveof 192.168.189.129 44444 ------指定master的地址</code>
五:依次开启主从redis,并测试
<code>Master:</code>
<code># /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf</code>
<code>Slave:</code>
使用客户端连接主redis,并进行一些简单操作
# /usr/local/redis/bin/redis-cli -h 192.168.189.129 -p 44444
连接从redis,查看数据是否同步
# /usr/local/redis/bin/redis-cli -h 192.168.189.131 -p 44444
从上可看到数据已同步,证明redis主从配置生效
注:由于在配置文件中配置了slave-read-only yes,因此从节点处于只读状态,无法对数据库进行操作和更改。
本文转自 icenycmh 51CTO博客,原文链接:http://blog.51cto.com/icenycmh/1792017,如需转载请自行联系原作者