Redis設定檔redis.conf詳細配置說明

來源:互聯網
上載者:User
本文列出了Redis的設定檔redis.conf的各配置項的詳細說明,簡單易懂,有需要的盆友可以參考哦。

redis.conf 配置項說明如下

redis設定檔詳解

# vi redis.confdaemonize yes #是否以後台進程運行pidfile /var/run/redis/redis-server.pid  #pid檔案位置port 6379#監聽連接埠bind 127.0.0.1  #綁定地址,如外網需要串連,設定0.0.0.0timeout 300   #連線逾時時間,單位秒loglevel notice #記錄層級,分別有:# debug :適用於開發與測試# verbose :更詳細資料# notice :適用於生產環境# warning :只記錄警告或錯誤資訊logfile /var/log/redis/redis-server.log  #記錄檔位置syslog-enabled no  #是否將日誌輸出到系統日誌databases 16#設定資料庫數量,預設資料庫為0############### 快照方式 ###############save 900 1  #在900s(15m)之後,至少有1個key發生變化,則快照save 300 10  #在300s(5m)之後,至少有10個key發生變化,則快照save 60 10000 #在60s(1m)之後,至少有1000個key發生變化,則快照rdbcompression yes  #dump時是否壓縮資料dir /var/lib/redis  #資料庫(dump.rdb)檔案存放目錄############### 主從複製 ###############slaveof <masterip> <masterport> #主從複製使用,用於本機redis作為slave去串連主redismasterauth <master-password>  #當master設定密碼認證,slave用此選項指定master認證密碼slave-serve-stale-data yes   #當slave與master之間的串連斷開或slave正在與master進行資料同步時,如果有slave請求,當設定為yes時,slave仍然響應請求,此時可能有問題,如果設定no時,slave會返回"SYNC with master in progress"錯誤資訊。但INFO和SLAVEOF命令除外。############### 安全 ###############requirepass foobared  #配置redis串連認證密碼############### 限制 ###############maxclients 128#設定最大串連數,0為不限制maxmemory <bytes>#記憶體清理策略,如果達到此值,將採取以下動作:# volatile-lru :預設策略,只對設定到期時間的key進行LRU演算法刪除# allkeys-lru :刪除不經常使用的key# volatile-random :隨機刪除即將到期的key# allkeys-random :隨機刪除一個key# volatile-ttl :刪除即將到期的key# noeviction :不到期,寫操作返回報錯maxmemory-policy volatile-lru#如果達到maxmemory值,採用此策略maxmemory-samples 3  #預設隨機播放3個key,從中淘汰最不經常用的############### 附加模式 ###############appendonly no  #AOF持久化,是否記錄更新動作記錄,預設redis是非同步(快照)把資料寫入本地磁碟appendfilename appendonly.aof #指定更新記錄檔名# AOF持久化三種同步策略:# appendfsync always  #每次有資料發生變化時都會寫入appendonly.aof# appendfsync everysec #預設,每秒同步一次到appendonly.aof# appendfsync no    #不同步,資料不會持久化no-appendfsync-on-rewrite no  #當AOF記錄檔即將增長到指定百分比時,redis通過調用BGREWRITEAOF是否自動重寫AOF記錄檔。############### 虛擬記憶體 ###############vm-enabled no   #是否啟用虛擬記憶體機制,虛擬記憶體機將資料分頁存放,把很少訪問的頁放到swap上,記憶體佔用多,最好關閉虛擬記憶體vm-swap-file /var/lib/redis/redis.swap  #虛擬記憶體檔案位置vm-max-memory 0  #redis使用的最大記憶體上限,保護redis不會因過多使用實體記憶體影響效能vm-page-size 32  #每個頁面的大小為32位元組vm-pages 134217728 #設定swap檔案中頁面數量vm-max-threads 4  #訪問swap檔案的線程數############### 進階配置 ###############hash-max-zipmap-entries 512  #雜湊表中元素(條目)總個數不超過設定數量時,採用線性緊湊格式儲存來節省空間的hash-max-zipmap-value 64   #雜湊表中每個value的長度不超過多少位元組時,採用線性緊湊格式儲存來節省空間的list-max-ziplist-entries 512 #list資料類型多少節點以下會採用去指標的緊湊儲存格式list-max-ziplist-value 64  #list資料類型節點值大小小於多少位元組會採用緊湊儲存格式set-max-intset-entries 512  #set資料類型內部資料如果全部是數值型,且包含多少節點以下會採用緊湊格式儲存activerehashing yes    #是否啟用重設雜湊

總結:

1、redis提供幾種持久化機制

a). RDB持久化

工作方式 :根據時間的間隔將redis中資料快照(dump)到dump.rdb檔案

優勢 :備份恢複簡單。RDB通過子進程完成持久化工作,相對比AOF啟動效率高

劣勢 :伺服器故障會丟失幾分鐘內的資料

b). AOF持久化

工作方式 :以日誌的形式記錄所有更新操作到AOF記錄檔,在redis服務重新啟動時會讀取該日誌文 件來重新構建資料庫,以保證啟動後資料完整性。

優勢 :AOF提供兩種同步機制,一個是fsync always每次有資料變化就同步到記錄檔和fsync everysec每秒同步一次到記錄檔,最大限度保證資料完整性。

劣勢:記錄檔相對RDB快照檔案要大的多

AOF日誌重寫功能

AOF記錄檔過大,redis會自動重寫AOF日誌,append模式不斷的將更新記錄寫入到老記錄檔中,同時redis還會建立一個新的記錄檔用於追加後續的記錄。

c). 同時應用AOF和RDB

對於資料安全性高的情境,可同時使用AOF和RDB,這樣會降低效能。

d). 無持久化

禁用redis服務持久化功能。

2、AOF記錄檔出錯後,修複方法

redis-check-aof --fix appendonly.aof #--fix參數為修複記錄檔,不加則對日誌檢查

3、不重啟redis從RDB持久化切換到AOF持久化

redis-cli> CONFIG SET appendonly yes   #啟用AOFredis-cli> CONFIG SET save ""     #關閉RDB

redis設定檔詳解列出了redis基礎配置項都是比較常用的,使用redis一定要瞭解這些配置項

相關推薦:

Redis設定檔redis.conf 詳解

【Redis筆記】第4篇:redis.conf中Replication配置項說明

為何在redis.conf中注釋了save配置項,重啟伺服器之後redis內還存有上一次寫入的資料?

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.