Redis配置文件redis.conf 詳解

1.基本配置

內存單位的表示

# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes

單位中不區分大小寫1GB 1Gb 1gB是一樣的

後臺運行,yes是後臺運行,no前臺運行,將輸出,輸出到終端(默認)

daemonize yes

如果daemonize參數爲yes的話就會產生pid文件,一下是pid文件的定義

pidfile /usr/local/redis-master/run/redis.pid

監聽的端口

port 6379

綁定監聽的IP地址

bind 127.0.0.1

如果在本地調用redis可以直接用sock文件

unixsocket /tmp/redis.sock  //sock文件的位置

unixsocketperm 755            //sock文件的權限

如果一個鏈接在N秒內是空閒的,就將其關閉

timeout 0

如果對方down了或者中間網絡斷了發送ACK到客戶端在指定的時間內沒有收到對方的迴應就斷開TCP鏈接(時間單位秒記),此參數會受到內核參數的影響,推薦配置60。

tcp-keepalive 0

指定輸出消息的級別

# debug (調試級別,詳細信息,信息量大)
# verbose (詳細信息,信息量較大)
# notice (通知,生產環境推薦)
# warning (錯誤信息警告信息)

loglevel notice

日誌輸出文件,默認在前端運行的時候此key的默認值是stdout輸出到終端,如果用守護進程運行此key的stdout的時候將日誌輸入到/dev/null,如果想記錄日誌,就必須爲其指定logfile位置

logfile /var/log/redis.log

將日誌記錄的哦syslog

syslog-enabled no

指定syslog的身份

syslog-ident redis

指定syslog的級別,必須是LOCAL0-LOCAL7之間

syslog-facility local0

設置數據庫的數量

databases 16

設置數據庫的數量。默認數據庫DB 0,你可以選擇一個不同的per-connection的使用SELECT<dbid>這兒的DBID是一個介於0和'databases'-1

databases 16

2.快照配置

將DB保存到磁盤的規則定義(快照)

格式:save <seconds> <changes>

例子:save 900 1  //在900秒(15分鐘)內如果至少有1個鍵值發生變化  就保存

            save 300 10  //在300秒(6分鐘)內如果至少有10個鍵值發生變化  就保存  
save 900 1                      //每一條表示一個存盤點
save 300 10
save 60 10000

如果啓用如上的快照(RDB),在一個存盤點之後,可能磁盤會壞掉或者權限問題,redis將依然能正常工作

stop-writes-on-bgsave-error yes

是否將字符串用LZF壓縮到.rdb 數據庫中,如果想節省CPU資源可以將其設置成no,但是字符串存儲在磁盤上佔用空間會很大,默認是yes

rdbcompression yes

rdb文件的校驗,如果校驗將避免文件格式壞掉,如果不校驗將在每次操作文件時要付出校驗過程的資源新能,將此參數設置爲no,將跳過校驗

rdbchecksum yes

轉儲數據的文件名

dbfilename dump.rdb

redis的工作目錄,它會將轉儲文件存儲到這個目錄下,並生成一個附加文件

dir /usr/local/redis-master/db

3.主從參數
如果本地是salve服務器那麼配置該項

# slaveof <masterip> <masterport>

slaveof 127.0.0.1 65532

master的驗證密碼

masterauth <master-password>

當從主機脫離主的鏈接時,如果此值爲yes當客戶端查詢從時,迴響應客戶端,如果是第一次同步回返回一個日期數據或這空值,如果設置爲no,則返回“SYNC with master in progress”到INFO and SLAVEOF

slave-serve-stale-data yes

從服務器只讀(默認)

slave-read-only yes

從發送ping到主的時間間隔(單位:秒)

repl-ping-slave-period 10

批量傳輸I / O超時和主數據或ping響應超時 默認60s 必須大於repl-ping-slave-period值

repl-timeout 60

此選項如果是“yes”那麼Redis的使用數量較少的TCP數據包和更少的帶寬將數據發送到,在從主機上延遲40毫秒(linux kernel中的40毫秒)出現。如果是no將在slave中減少延遲,但是流量使用回相對多一些,如果用多個從主機,此處建議設置成yes

repl-disable-tcp-nodelay no

從主機的優先級,如果當主主機掛了的時候,將從從主機中選取一個作爲其他從機的主,首先優先級的數字最低的將成爲主,0是一個特殊的級別,0將永遠不會成爲主。默認值是100.

slave-priority 100

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