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-dump
rdb的優缺點
優點:由於存儲的有數據快照文件,恢復數據很方便。
缺點:會丟失最後一次快照以後更改的所有數據。
 
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服務器的啓動與關閉指令:

  [root@localhost src]# ./redis-server ../redis.conf                啓動redis

  [root@localhost src]# ./redis-cli shutdown                          關閉redis


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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章