一、下載、編譯
redis是以源碼方式發行的,先下載源碼,然后在linux下編譯
1.1 http://www.redis.io/download 先到這里下載Stable穩定版,目前最新版本是2.8.17
1.2 上傳到linux,然后運行以下命令解壓
tar xzf redis-2.8.17.tar.gz
1.3 編譯
cd redis-2.8.17
make
注:make命令需要linux上安裝gcc,若機器上未安裝gcc,redhat環境下,如果能聯網,可鍵入
yum -y install gcc 安裝
(若之前安裝了其它版本的gcc,導致make失敗,可嘗試先yum -y remove gcc刪除舊版本)
另:編譯中若提示"Newer version of jemalloc required"之類的錯誤,在make后加參數 MALLOC=libc,即 make MALLOC=libc
二、修改redis端口,調整運行方式為后臺進程daemonize方式運行
默認端口為6379,如果linux上該端口被墻了,可以嘗試換一個端口
2.1 參考下面的命令(將端口改成7030)
cd $REDIS_HOME (進入redis主目錄)
mkdir conf (創建conf目錄,用于存放配置)
cd conf (進入conf目錄)
cp ../redis.conf redis7030.conf (將上級目錄下的redis.conf復制到當前目錄,并重命名為redis7030.conf)
vi redis7030.conf (用vi編輯該配置文件)
找到:
daemonize no,將no改成yes
port 7030,將6379改成7030
然后保存退出
三、啟動redis
cd $REDIS_HOME/src
./redis-server ../conf/redis7030.conf
四、使用redis-cli客戶端驗證
仍然保持在“redis_home主目錄\src"下,輸入
./redis-cli -p 7030 set test 'Hello Redis'
即:指定端口7030,連接到本機redis,同時設置一個key為test,value為'Hello Redis'的緩存項
(注:如果連接遠程的redis服務器,可以用類似./redis-cli -h 192.168.1.190 -p 8030 get a)
讀取緩存
./redis-cli -p 7030 get test 測試獲取test緩存項
刪除緩存
./redis-cli -p 7030 del test
小技巧:redis沒有提供批量刪除的方法,可以用下面的技巧批量刪除 ./redis-cli -p 7030 KEYS "*" | xargs ./redis-cli -p 7030 DEL
此外,還可以通過
./redis-benchmark -p 7030 進行性能測試
五、停止redis
./redis-cli -p 7030 shutdown
為了以后運維更輕松,可以利用alias做幾個別名,
vi ~/.bashrc
alias redis="cd /opt/app/redis/redis-2.8.17/src"
alias startRedis="/opt/app/redis/redis-2.8.17/src/redis-server /opt/app/redis/redis-2.8.17/conf/redis7030.conf"
alias stopRedis="/opt/app/redis/redis-2.8.17/src/redis-cli -p 7030 shutdown"
具體路徑,大家根據實際情況調整,保存退出,重新連接到linux終端
redis 即可直接進入redis根目錄
startRedis 即啟動redis
stopRedis 即停止redis
六、配置redis僅做為緩存使用
如果不打算使用事務、管線等一堆復雜功能,僅僅把redis當成cache server使用,可以在配置文件中,找到maxmemory、maxmemory-policy這二項,參考下面修改
maxmemory 2048mb
maxmemory-policy allkeys-lru
即:最大允許使用2G內存,所有key全都按LRU(近期最少使用)算法淘汰,這種情況下,不用設置過期時間,只要內存使用達到上限,不怎么使用的key自然被干掉。
附:redis.conf的微優化配置(從百度百科上抄過來的)
1 daemonize yes 2 3 pidfile /opt/app/redis/redis-2.8.17/var/redis.pid 4 5 port 7030 6 7 timeout 300 8 9 loglevel debug 10 11 logfile /opt/app/redis/redis-2.8.17/var/redis.log 12 13 databases 16 14 15 save 9001 16 17 save 30010 18 19 save 6010000 20 21 rdbcompression yes 22 23 dbfilename dump.rdb 24 25 dir /opt/app/redis/redis-2.8.17/var/ 26 27 appendonly no 28 29 appendfsync always 30 31 # slaveof <masterip> <masterport> 32 # masterauth <master-password> 33 34 slave-serve-stale-data yes 35 36 slave-read-only yes 37 38 maxmemory 1gb 39 40 maxmemory-policy allkeys-lru
其中:
端口、38行-最大內存使用量、以及var目錄路徑,大家根據實際情況自行調整
最后在動手寫代碼前,先強烈建議閱讀下 An introduction to Redis data types and abstractions (官網的入門文檔),并認真把文中提到的示例通過redis-cli 運行一次
文章列表