文章目錄
- 4.2 使用scp 來複製檔案及目錄
- 4.3 配置slave的redis.conf
- 5.1啟動伺服器
- 5.2 測試同步情況
1、簡介
redis是一個key-value儲存系統。和Memcached類似,它支援儲存的value類型相對更多,包括string(字串)、list(鏈表)、set(集合)和zset(有序集合)。這些資料類型都支援push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎上,redis支援各種不同方式的排序。與memcached一樣,為了保證效率,資料都是緩衝在記憶體中。區別的是redis會周期性的把更新的資料寫入磁碟或者把修改操作寫入追加的記錄檔案,並且在此基礎上實現了master-slave(主從)同步。Redis 是一個高效能的key-value資料庫。 redis的出現,很大程度補償了memcached這類key/value儲存的不足,在部 分場合可以對關聯式資料庫起到很好的補充作用。它提供了Python,Ruby,Erlang,PHP用戶端,使用很方便。
2、安裝測試環境
centos 6.3
3、redis配置master (主伺服器 192.168.2.136)
3.1 安裝redis
linux下安裝
$ wget http://redis.googlecode.com/files/redis-2.6.13.tar.gz$ tar xzf redis-2.6.13.tar.gz$ cd redis-2.6.13$ make
注意:安裝前,請先確定你的伺服器已經安裝過gcc、tcl
3.2 建立相關目錄
mkdir -p /usr/local/webserver/redis/confmkdir -p /usr/local/webserver/redis/runmkdir -p /usr/local/webserver/redis/dbcp redis.conf /usr/local/webserver/redis/conf/#cd srccp redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server mkreleasehdr.sh /usr/local/webserver/redis/vim /usr/local/webserver/redis/conf/redis.conf#修改下面三處daemonize yes --yes啟用守護進程pidfile /usr/local/webserver/redis/run/redis.pid --Redis以守護進程方式運行時把pid寫入檔案dir /usr/local/webserver/redis/db --資料存放的目錄port 6380
3.3 建立開啟redis指令碼
vim /usr/local/webserver/redis/start.sh#!/bin/bash/usr/local/webserver/redis/redis-server /usr/local/webserver/redis/conf/redis.conf
3.4 建立關閉redis進程指令碼
vim /usr/local/webserver/redis/stop.sh#!/bin/bashkill `cat /usr/local/webserver/redis/run/redis.pid`
4、建立兩個從slave伺服器(192.168.2.137 、192.168.2.138)
4.1 建立相關目錄
mkdir -p /usr/local/webserver/redis/confmkdir -p /usr/local/webserver/redis/runmkdir -p /usr/local/webserver/redis/db
4.2 使用scp 來複製檔案及目錄
#192.168.2.137上執行scp /usr/local/webserver/redis/* root@192.168.2.137:/usr/local/webserver/redis/ -r#192.168.2.138上執行scp /usr/local/webserver/redis/* root@192.168.2.138:/usr/local/webserver/redis/ -r#分別輸入密碼後複製
4.3 配置slave的redis.conf
#192.168.2.137上執行vim /usr/local/webserver/redis/conf/redis.confport 6381pidfile /usr/local/webserver/redis-slave1/run/redis.piddir /usr/local/webserver/redis-slave1/dbslaveof 192.168.2.136 6380#192.168.2.138上執行vim /usr/local/webserver/redis/conf/redis.confport 6382pidfile /usr/local/webserver/redis-slave1/run/redis.piddir /usr/local/webserver/redis-slave1/dbslaveof 192.168.2.136 6380
5、啟動redis並查看主從同步情況
5.1啟動伺服器
#分別啟動主從伺服器上的redis/usr/local/webserver/redis/start.sh#驗證啟動是否netstat -nlpt | grep redis-server
5.2 測試同步情況
#192.168.2.136 master$ set param haibrother#192.168.2.137 slave$ get param$ haibrother#192.168.2.138 slave$ get param$ haibrother#同步成功