溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

CentOS6.9安裝Redis4.0.0

發(fā)布時(shí)間:2020-08-02 16:55:06 來源:網(wǎng)絡(luò) 閱讀:1910 作者:達(dá)日來 欄目:關(guān)系型數(shù)據(jù)庫

防偽碼:沒有相當(dāng)程度的孤獨(dú)是不可能有內(nèi)心的平和。

1、環(huán)境準(zhǔn)備

主機(jī)名IP系統(tǒng)
redis-01192.168.10.24CentOS release 6.9 (Final)

Redis安裝比較簡(jiǎn)單,官網(wǎng)下載界面就有參考:

https://redis.io/download



2、安裝

# 創(chuàng)建安裝目錄
mkdir /app
# 下載redis4.0.0
cd /opt
wget http://download.redis.io/releases/redis-4.0.0.tar.gz

# 解壓并安裝 
tar zxf redis-4.0.0.tar.gz -C /app
cd /app/redis-4.0.0
make
make PREFIX=/app/redis install

# 配置環(huán)境變量:
export PATH=/app/redis/bin/:$PATH
echo "export PATH=/app/redis/bin/:$PATH">>/etc/profile


3、啟動(dòng)

redis-server /app/redis-4.0.0/redis.conf
# 出現(xiàn)報(bào)錯(cuò):
4631:M 20 Jul 16:01:04.624 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
4631:M 20 Jul 16:01:04.624 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
4631:M 20 Jul 16:01:04.624 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.


解決告警1

echo 511 > /proc/sys/net/core/somaxconn


解決告警2

echo "vm.overcommit_memory=1" > /etc/sysctl.conf
sysctl vm.overcommit_memory=1


overcommit_memory參數(shù)說明:

可選值:0、1、2。

0, 表示內(nèi)核將檢查是否有足夠的可用內(nèi)存供應(yīng)用進(jìn)程使用;如果有足夠的可用內(nèi)存,內(nèi)存申請(qǐng)?jiān)试S;否則,內(nèi)存申請(qǐng)失敗,并把錯(cuò)誤返回給應(yīng)用進(jìn)程。

1, 表示內(nèi)核允許分配所有的物理內(nèi)存,而不管當(dāng)前的內(nèi)存狀態(tài)如何,即最大限度使用內(nèi)存。

2, 表示內(nèi)核允許分配超過所有物理內(nèi)存和交換空間總和的內(nèi)存

Linux對(duì)大部分申請(qǐng)內(nèi)存的請(qǐng)求都回復(fù)"yes",以便能跑更多更大的程序。因?yàn)樯暾?qǐng)內(nèi)存后,并不會(huì)馬上使用內(nèi)存。這種技術(shù)叫做Overcommit。當(dāng)linux發(fā)現(xiàn)內(nèi)存不足時(shí),會(huì)發(fā)生OOM killer(OOM=out-of-memory)。它會(huì)選擇殺死一些進(jìn)程(用戶態(tài)進(jìn)程,不是內(nèi)核線程),以便釋放內(nèi)存。

當(dāng)oom-killer發(fā)生時(shí),linux會(huì)選擇殺死哪些進(jìn)程?選擇進(jìn)程的函數(shù)是oom_badness函數(shù)(在mm/oom_kill.c中),該函數(shù)會(huì)計(jì)算每個(gè)進(jìn)程的點(diǎn)數(shù)(0~1000)。點(diǎn)數(shù)越高,這個(gè)進(jìn)程越有可能被殺死。每個(gè)進(jìn)程的點(diǎn)數(shù)跟oom_score_adj有關(guān),而且oom_score_adj可以被設(shè)置(-1000最低,1000最高)。



解決告警3:

echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'>>/etc/rc.local


查看是否成功啟動(dòng):

[root@redis-01 ~]#ps -ef|grep redis
root      27905   1437  0 16:53 pts/0    00:00:00 redis-server 127.0.0.1:6379
root      27910   1437  0 16:53 pts/0    00:00:00 grep --color=auto redis
[root@redis-01 ~]#lsof -i :6379
COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
redis-ser 27905 root    6u  IPv4  35926      0t0  TCP localhost:6379 (LISTEN)


關(guān)閉redis:

redis-cli shutdown


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI