1. 程式人生 > >centos6.5下redis的安裝與配置

centos6.5下redis的安裝與配置

$ wget http://download.redis.io/releases/redis-3.2.9.tar.gz
$ tar xzf redis-3.2.9.tar.gz
$ cd redis-3.2.9
$ make  或者  make install PREFIX=安裝目錄

上述流程依次代表,下載redis --> 解壓 --> 進入解壓目錄 --> 編譯原始碼

多數情況下,執行make時,可能會出現如下錯誤:


異常一:

make[2]: cc: Command not found

異常原因:沒有安裝gcc

解決方案:yum install gcc-c++

異常二:

zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory

異常原因:一些編譯依賴或原來編譯遺留出現的問題

解決方案:make distclean。清理一下,然後再make。

在make成功以後,需要make test。在make test出現異常。

異常一:

couldn't execute "tclsh8.5": no such file or directory

異常原因:沒有安裝tcl

解決方案:yum install -y tcl。


到此,redis安裝完成。

若是通過:make install PREFIX=安裝目錄, 完成安裝的,會在安裝目錄下生成一個bin目錄,bin目錄下包含如下可執行檔案:


redis-benchmark : 用於測試redis的效能。

redis-check-aof : 當aof備份檔案被損壞,可通過該工具對aof檔案進行修復,使用方式:redis-check-aof --fix 要修復的aof檔案

redis-check-rdb : 修復損壞的rdb備份檔案。

redis-cli : redis客戶端,用於連線服務端。

redis-server : redis伺服器端,用於啟動redis伺服器。

redis-sentinel : 哨兵模式(實際使用較多) 在master-slave模式下(slave預設不支援寫),當master出現異常時,自動在slave中選擇一臺作為master。

連線上redis伺服器後,可通過指令“info

”檢視redis伺服器資訊,也可檢視伺服器知道內容資訊,例如:info replication 檢視主從相關資訊



下面介紹幾個redis常用配置項(redis.cnf配置檔案中配置)
1、bind 127.0.0.1 配置redis伺服器接受連結的網絡卡(非客戶端ip,而是伺服器端ip,伺服器可能包含多個網絡卡)

2、protected-mode yes redis以保護模式執行,只接受本地連結,不能外網訪問

3、port 6379 redis接受連結埠

4、daemonize no redis是否後臺執行,若為yes,客戶端視窗將被鎖定
重要配置項
5、maxmemory redis最大使用記憶體
6、maxmemory-policy 記憶體達到最大值時的驅逐策略


redis資料持久化支援兩種模式:RDBAOF
RDB:rdb方式的持久化是通過快照完成的,當符合一定條件時redis會自動將記憶體中的所有資料執行快照操作並存儲到硬碟上。預設儲存在redis根目錄的dump.rdb檔案中。(檔名在配置檔案中dbfilename)

redis進行快照的時機(在配置檔案redis.conf中)  save 900 1:表示900秒內至少一個鍵被更改則進行快照。  save 300 10  save 60 10000
dbfilename dump.rdb   快照儲存檔名
dir ./ 快照儲存地址

也可通過redis客服端執行命令save或者bgsave儲存快照:
 兩個命令的區別在於,save是由主程序進行快照操作,會阻塞其它請求。bgsave是由redis執行fork函式複製出一個子程序來進行快照操作。檔案修復:redis-check-dumprdb的優缺點優點:由於儲存的有資料快照檔案,恢復資料很方便。缺點:會丟失最後一次快照以後更改的所有資料。
AOF:aof方式的持久化是通過日誌檔案的方式,記錄下redis伺服器的每一條修改指令。預設情況下redis沒有開啟aof,可以通過引數appendonly引數開啟。
  appendonly yes  aof檔案的儲存位置和rdb檔案的位置相同,都是dir引數設定的,預設的檔名是appendonly.aof,可以通過      appendfilename引數修改  appendfilename appendonly.aof  redis寫命令同步的時機:   appendfsync always 每次都會執行   appendfsync everysec 預設 每秒執行一次同步操作(推薦,預設)   appendfsync no不主動進行同步,由作業系統來做,30秒一次redis伺服器啟動時會讀取appendonly.aof中的指令,進行執行,這樣便保證了重啟後資料不會丟失。注意:當redis啟動時,如果rdb持久化和aof持久化都打開了,那麼程式會優先使用aof方式來恢復資料集,因為aof方式所儲存的資料通常是最完整的。
 
最後記錄下redis伺服器的啟動與關閉指令:

 [[email protected] src]# ./redis-server ../redis.conf                啟動redis

  [[email protected] src]# ./redis-cli shutdown                          關閉redis

轉至:https://www.cnblogs.com/yinz/p/7065146.html