IP:192.168.225.128
環境:centos7redis
# gcc -version 或者 # g++ --version yum install -y gcc
wget http://download.redis.io/releases/redis-3.2.10.tar.gz
# tar -zxvf redis-3.2.10.tar.gz # mv redis-3.2.10 /usr/local/redis # cd redis
# make # make test 遇到報錯 Executing test client: NOREPLICAS Not enough good slaves to write.. 能夠修改文件tests/integration/replication-2.tcl,將after 1000改成after 10000以延長等待時間。 # make test # make install PREFIX=/usr/local/redis PREFIX安裝指定目錄 不然安裝到/usr/local/bin裏面了
bind 192.168.225.128 port 6379 timeout 0 daemonize yes pidfile /var/run/redis6379.pid loglevel debug logfile /var/log/redis6379.log
# cd /usr/local/redis6379/bin # ./redis-server ../redis6379.conf & # cd /usr/local/redis6380/bin # ./redis-server ../redis6380.conf &
安裝位置:/usr/local/redis6380 配置文件:/usr/local/redis6380/redis6380.conf 啓動後pid文件:/var/run/redis_6380.pid 日誌文件:/var/log/redis6380.log 數據文件位置:/data/redis6380/
(一個服務器上啓動兩個redis,端口爲6379和6380,
192.168.225.128:6379主,192.168.225.128:6380從centos
不須要改動服務器
vi /etc/redis/6380.conf slave-serve-stale-data yes # slaveof <masterip> <masterport>下面添加一句 slaveof 192.168.225.128 6379
先關閉redis # redis-cli -h 192.168.225.128 -p 6380 shutdown # cd /usr/local/redis6379/ # bin/redis-server redis6379.conf & # cd /usr/local/redis6380/ # bin/redis-server redis6380.conf &
# ps -ef |grep redis
[root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6379 192.168.225.128:6379> set ma right OK 192.168.225.128:6379> set Li class2 OK 192.168.225.128:6379> keys * 1) "ma" 2) "fangchan" 3) "Li" 192.168.225.128:6379> [root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6380 192.168.225.128:6380> keys * 1) "ma" 2) "Li" 3) "fangchan" 192.168.225.128:6380>
192.168.225.128:6380> set lll beaty (error) READONLY You can't write against a read only slave.
192.168.225.128:6379主,192.168.225.128:6380從測試
# redis-cli -h 192.168.225.128 -p 6379 shutdown
[root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6380 slaveof NO ONE OK
[root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6380 192.168.225.128:6380> set apu new OK 192.168.225.128:6380> get apu "new" 192.168.225.128:6380>
從庫能夠寫入,切換成功centos7
[root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6380 192.168.225.128:6380> set apu new OK 192.168.225.128:6380> get apu "new" 192.168.225.128:6380> save
# cd /usr/local/redis6379 # bin/redis-server redis6379.conf &
[root@bogon redis6379]# redis-cli -h 192.168.225.128 -p 6380 slaveof 192.168.225.128 6379 OK
以前在從庫中添加的key,此時在主庫6379中均可以查看debug
主redis6379寫入,從redis6380可正常同步;
從redis只支持讀,不支持寫入日誌