centos7.2安裝redis與配置(史上最全)

學習了php已經快三年了,一直是在盲目的忙,也沒整理下筆記,今天整理一下php

分享下安裝redis的方法html

#首先去redis官網去下載   http://www.redis.cn/download.htmlnode

我選擇的5.0c++

下載原碼進行編譯redis

wget http://download.redis.io/releases/redis-5.0.0.tar.gz數據庫

 

tar xzf redis-5.0.0.tar.gz vim

 

cd redis-5.0.0/安全

 

進行編譯bash

 

yum -y install gcc gcc-c++ kernel-devel  服務器

 

make

 

安裝

make PREFIX=/usr/local/redis install

 

mkdir /usr/local/redis/etc/

 

cp redis.conf /usr/local/redis/etc/

 

cd /usr/local/redis/bin/

 

cp redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server  /usr/bin/

 

#修改配置

vim /usr/local/redis/etc/redis.conf

 

網絡配置

1) bind 127.0.0.1

#<==綁定服務器的IP地址,強烈建議修改成服務器的對外IP,如192.168.1.10

2)protected-model yes

#<==啓用保護模式,在沒有配置bind地址和密碼的時候,只容許127.0.0.1和::1,或者是unix的socket來鏈接

3)port 6379

#<==redis接收鏈接的端口,默認爲6379

4)tcp-backlog 511

#<==tcp監聽的積壓,在高頻率環境中須要高積壓來避免客戶端的慢訪問問題。

5)timeout 0

#<==客戶端空閒N秒後關閉鏈接(0表示禁用)

6)tcp-keepalive 300

#<==tcp檢測存活的時間間隔

通常配置

 

7) daemonize no

#<==是不是啓動後臺運行模式,默認爲no,強烈建議設置爲yes

8)supervised no

#<==經過upstart和systemd啓動redis時的監督策略,0表示禁止

9)pidfile /var/run/redis_6379.pid

#<==deamon模式運行時的PID存放文件

10)loglevel notice

#<==打印日誌級別,分別爲debug、verbose、notice、warning

 11)logfile /var/log/redis/redis.log

#<==指定日誌文件名稱

12)databases 16

#<==設置數據庫數量,默認數據庫爲DB0,0-15,共16個,可使用select dbid選擇數據庫

快照配置

13) save 900 1

14) save 300 10

15)  save 60 10000

#<==設置數據保存到硬盤RDB文件的保存點,例如save 900 1表示若是在900秒之內有個一key有變更,則觸發一次刷新數據到硬盤的RDB文件中。若是不想保留數據到硬盤,則能夠將以上三個參數替換爲save ""

16)stop-writes-on-bgsave-error yes

#<==設置若是後臺保存失敗,那麼redis將中止數據的寫入。

17)rdbcompression yes

#<==轉儲.rdb數據庫時使用LZF壓縮字符串對象。

18)rdbchecksum yes

#<==在RDB文件末尾的校驗,會下降10%的性能,若是想獲取最佳性能,則能夠關閉此選項

19)dbfilename dump.rdb

#<==DB文件的備份名名

20)dir /var/lib/redis

#<==指定工做目錄,rdb存放的目錄。若是沒有指定,則默認在運行命令的路徑下。

主從配置

21)slave-serve-stale-data yes

#<==與master失聯的應對方式,yes時會回覆客戶端舊的數據;no會提示報錯「SYNC with master in progress」

22) slave-read-only yes

#<==設置slave服務器只讀

23) repl-diskless-sync no

#<==是否啓動無盤同步方式,即便用socket作同步策略而不會使用到disk。(磁盤IO慢,且帶寬足夠大時可選擇採用。但該功能目前還不處實驗狀態,建議選擇關閉)

24)repl-diskless-sync-delay 5

#<==當repl-diskless-sync設置爲yes時,設置傳輸前的等待時間。要禁用該功能可配置爲0。

25)repl-disable-tcp-nodelay no

#<==tcp延時的優化,默認爲no。在很是高的網絡trafiic條件或者主備距離遠時,可開啓爲yes。

26)slave-priority 100

#<==從節點的優先級。數字越低級別越高,0表示不會被提高帶master。

 追加模式配置

27) appendonly no

#<==是否開啓AOF追加功能,yes表示開啓,建議
 

28) appendfilename "appendonly.aof"

#<==AOF文件名,默認爲appendonly.aof
 

29) appendfsync everysec

#<==寫入AOF文件的頻率。有no(操做系統須要時刷新,速度快)、always(每追加一條就會刷新,安全)、everysec(每秒刷新一次)三種選擇,默認爲everysec
 

30) no-appendfsync-on-rewrite no

#<==緩解AOF寫入阻塞,默認爲no。若是有延遲問題,能夠選擇yes
 

31) auto-aof-rewrite-percentage 100

#<==觸發自動重寫所佔的百分比,0表示禁用自動重寫功能
 

32) auto-aof-rewrite-min-size 64mb

#<==指定自動重寫AOF文件的最小大小
 

33) aof-load-truncated yes

#<==是否加載被截斷(reids出問題時AOF文件可能被截斷)的AOF日誌。設置yes表示加載被截斷的AOF文件,並經過日誌告知用戶;若是設置爲no,則redis拒絕啓動,須要運行redis-check-aof才能啓動服務。
 

 LUA腳本配置

34) lua-time-limit 5000

#<==以毫秒爲單位的LUA腳本最長執行時間,0或者負數表示不限制
 

 慢日誌配置

35) slowlog-log-slower-than 10000

#<==記錄執行命令的超時時間,單位爲微秒。負數表示禁用該功能,0表示強制記錄每條命令。
 

36) slowlog-max-len 128

#<==慢日誌的長度,注意會消耗內存,可使用SLOWLOG RESET回收慢日誌所使用的內存
 

延時監視配置

37) latency-monitor-threshold 0

#<==設置監視的執行命令時間,超過該值的纔會被記錄。0表示關閉該功能。
 

 事件通知配置

38) notify-keyspace-events ""

#<==通常不會用到此功能,並且會帶來額外的開銷
 

 高級配置

39) hash-max-ziplist-entries 512

#<==hash閾值最大的條目數
 

40) hash-max-ziplist-value 64

41) list-max-ziplist-size -2

#<==每一個內部列表節點容許的條目數,-2表示8KB。(-5表示64KB;-4表示32KB;-3表示-16KB;-1表示4KB)
 

42) list-compress-depth 0

#<==列表的壓縮深度,0表示不壓縮
 

43) set-max-intset-entries 512

#<==集合大小的限制
 

44) zset-max-ziplist-entries 128

#<==有序集合特殊編碼格式最大元素限制
 

45) zset-max-ziplist-value 64

#<==有序集合特殊編碼格式最大長度限制
 

46) hll-sparse-max-bytes 3000

#<==HyperLogLog最大字節數的限制
 

47) activerehashing yes

#<==開啓主動hash功能,能夠儘量快釋放內存。若是有嚴格的延遲要求,能夠設置爲no。
 

48) client-output-buffer-limit normal 0 0 0

49) client-output-buffer-limit slave 256mb 64mb 60

50) client-output-buffer-limit pubsub 32mb 8mb 60

#<==格式爲client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>,表示若是達到硬限制,當即斷連;達到軟限制並持續以後的秒數,斷連。默認普通客戶端不受限制,由於不會在沒有詢問的狀況下接收數據。
 

51) hz 10

#<==設置Redis檢查任務的頻率,範圍爲1-500,最好不要超過100。
 

52) aof-rewrite-incremental-fsync yes

#<==沒生成32MB數據,AOF文件將被fsync-ed,避免延遲尖峯。

 

#配置環境變量

 

vim /etc/profile

export PATH="$PATH:/usr/local/redis/bin"

 

讓環境變量當即生

source /etc/profile

 

 

#開啓自啓動設置

redis提供了一個管理啓動,關閉,重啓的腳本,位置是在

/usr/local/redis-5.0.0/utils/redis_init_script

#複製腳本文件到init.d目錄下()

cp /usr/local/redis-5.0.0/utils/redis_init_script /etc/init.d/redis

 

#編輯/etc/init.d/redis

 

# 給腳本增長運行權限

chmod +x /etc/init.d/redis

 

查看服務列表 chkconfig --list

 

添加服務 chkconfig --add redis

 

配置啓動級別 chkconfig --level 2345 redis on

 

 

啓動測試

 

systemctl start redis 或者 /etc/init.d/redis start

 

systemctl stop redis  或者 /etc/init.d/redis stop

 

 

查看redis進程

 

ps -aux|grep redis

 

查看端口

 

netstat -an|grep 6379

相關文章
相關標籤/搜索