首頁  >  文章  >  資料庫  >  詳細介紹Redis配置項

詳細介紹Redis配置項

coldplay.xixi
coldplay.xixi轉載
2021-01-14 09:51:392230瀏覽

詳細介紹Redis配置項

推薦(免費):Redis教學

今天我們來看看Redis. conf的配置項目都有什麼作用,想用好一個工具,配置內容是基礎。

  1. daemonize no
    Redis預設不是以守護程式的方式執行,可以透過此設定項修改,使用yes啟用守護程式(Windows不支援守護程式的配置為no)
  2. pidfile /var/run/redis.pid
    當Redis以守護程式方式運作時,Redis預設會把pid寫入/var/run/redis.pid文件,可以透過pidfile指定
  3. #port 6379
    指定Redis監聽端口,預設端口為6379,作者在自己的一篇博文中解釋了為什麼選用6379作為默認端口,因為6379在手機按鍵上MERZ對應的號碼,而MERZ取自意大利歌女Alessia Merz的名稱
  4. bind 127.0.0.1
    綁定的主機位址
  5. timeout 300
    當客戶端閒置多少秒後關閉連接,如果指定為0,表示關閉該功能
  6. loglevel notice
    指定日誌記錄級別,Redis總共支援四個級別:debug、verbose、notice、warning,預設為notice
  7. logfile stdout
    日誌記錄方式,預設為標準輸出,如果配置Redis為守護程序方式運行,而這裡又配置為日誌記錄方式為標準輸出,則日誌將會發送給/dev/null(代表空設備文件,它等價於一個僅僅寫文件,全部寫入它的內容都會永遠遺失。而嘗試從它那裡讀取內容則什麼也讀不到。)
  8. databases 16
    設定資料庫的數量,預設資料庫為0,可以使用SELECT指令在連線上指定資料庫id
  9. save
    指定在多長時間內,有多少次更新操作,就將資料同步到資料文件,可以多個條件配合
    Redis預設設定檔中提供了三個條件:
    save 900 1 表示900秒(15分鐘)內有1個變更
    save 300 10 表示300秒(5分鐘)內有10個變更
    save 60 10000 表示60秒內有10000個變更
  10. rdbcompression yes
    指定儲存至本機資料庫時是否壓縮數據,預設為yes,Redis採用LZF壓縮,如果為了節省CPU時間,可以關閉該選項,但會導致資料庫檔案變的巨大
  11. dbfilename dump.rdb
    指定本機資料庫檔案名,預設值為dump.rdb
  12. dir ./
    指定本機資料庫存放目錄
  13. slaveof
    設定當本機為slave服務時,設定master服務的IP位址及連接埠,在Redis啟動時,它會自動從master進行資料同步
  14. masterauth
    當master服務設定了密碼保護時,slave服務連線master的密碼
  15. requirepass foobared
    設定Redis連接密碼,如果配置了連接密碼,客戶端在連接Redis時需要透過AUTH 指令提供密碼,預設關閉
  16. maxclients 128
    設定相同時間最大客戶端連接數,預設無限制,Redis可以同時開啟的客戶端連線數為Redis程式可以開啟的最大檔案描述符數,如果設定maxclients 0,表示不作限制。當客戶端連線數到達限制時,Redis會關閉新的連線並向客戶端傳回max number of clients reached錯誤訊息
  17. maxmemory
    指定Redis最大記憶體限制,Redis在啟動時會把資料載入到記憶體中,達到最大記憶體後,Redis會先嘗試清除已到期或即將到期的Key,當此方法處理後,仍然到達最大記憶體設置,將無法再進行寫入操作,但仍然可以進行讀取操作。 Redis新的vm機制,會把Key存放內存,Value會存放在swap區
  18. appendonly no
    指定是否在每次更新操作後進行日誌記錄,Redis在預設情況下是異步的把資料寫入磁碟,如果不開啟,可能會在斷電時導致一段時間內的資料遺失名稱。因為redis本身同步資料檔是依照上面save條件來同步的,所以有的資料會在一段時間內只存在於記憶體中。預設為no
  19. appendfilename appendonly.aof
    指定更新日誌檔案名,預設為appendonly.aof
  20. appendfsync everysec
    指定更新日誌條件,共有3個可選值:
    no:表示等作業系統進行資料快取同步到磁碟(快)
    always:表示每次更新操作後手動呼叫fsync()將資料寫到磁碟(慢,安全性)
    everysec:表示每秒同步一次(折中,預設值)
  21. vm-enabled no
    指定是否啟用虛擬記憶體機制,預設值no,簡單的介紹一下,VM機制將資料分頁存放,由Redis將訪問量較少的頁即冷資料swap到磁碟上,訪問多的頁面由磁碟自動換出到記憶體(在後面的文章我會仔細分析Redis的VM機制)
  22. vm-swap- file /tmp/redis.swap
    虛擬記憶體檔案路徑,預設值為/tmp/redis/swap,不可多個Redis實例共用
  23. vm-max-memory 0
    將所有大於vm-max-memory的資料存入虛擬內存,無論vm-max-memory設定多小,所有索引資料都是記憶體儲存的(Redis的索引資料就是keys),也就是說,當vm-max -memory設定為0的時候,其實是所有value都存在於磁碟。預設值為0
  24. vm-page-size 32
    Redis swap檔案分成了很多的page,一個物件可以儲存在多個page上面,但一個page上不能被多個物件共享,vm -page-size是要根據儲存的資料大小來設定的,作者建議如果儲存很多小對象,page大小最好設定為32或64bytes;如果儲存很多大對象,則可以使用更大的page,如果不確定,就使用預設值
  25. vm-pages 134217728
    設定swap檔案中的page數量,由於頁表(一種表示頁面空閒或使用的bitmap)是在放在記憶體中的,在磁碟上每8個pages將消耗1byte的記憶體
  26. vm-max-threads 4
    設定存取swap檔案的執行緒數,最好不要超過機器的核數,如果設定為0,那麼所有對swap檔案的操作都是串列的,可能會造成比較長時間的延遲。預設值為4
  27. glueoutputbuf yes
    設定在向客戶端應答時,是否把較小的套件合併為一個套件發送,預設為開啟
  28. hash-max-zipmap- entries 64 hash-max-zipmap-value 512
    指定在超過一定的數量或最大的元素超過某一臨界值時,採用一種特殊的雜湊演算法
  29. activerehashing yes
    指定是否啟動重置哈希,預設為開啟
  30. include /path/to/local.conf
    指定包含其它的配置文件,可以在同一主機上多個Redis實例之間使用同一份配置文件,而同時各個實例又擁有自己的特定設定檔
    詳細介紹Redis配置項
#

以上是詳細介紹Redis配置項的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除