Redis系列:Linux下部署Redis 6.x 版本

點擊上方「藍字」關(guān)注我們

現(xiàn)在的互聯(lián)網(wǎng)項目無論項目大小,都或多或少使用到Redis。其中Redis最常見的使用場景:
不經(jīng)常變化的數(shù)據(jù)緩存
分布式session,主要是記錄用戶的登錄狀態(tài)
分布式鎖,主要對獨占資源的鎖定
Redis有多種部署模式,本篇先介紹一下單機部署
0x01:下載Redis
官網(wǎng):https://redis.io/

從下載鏈接進去,可以發(fā)現(xiàn)提供了三個版本:非穩(wěn)定版本、穩(wěn)定版本和Docker版本

直接下載穩(wěn)定版本
wget http://download.redis.io/releases/redis-6.0.7.tar.gz
0x02:安裝Redis
編譯 redis-6.x,要求 C11 編譯器,否則會遇到大量如下所示的錯誤:
server.h:1051:5:?錯誤:expected specifier-qualifier-list before ‘_Atomic’
server.c:1032:31:?錯誤:‘struct redisServer’沒有名為‘logfile’的成員
主要原因是從 redis-6.x 開始的多線程代碼依賴C標準庫中的新增類型 _Atomic 。但是注意 gcc 從 4.9 版本才開始正式和完整地支持 stdatomic(gcc-4.8.5 部分支持)。centos7默認的 gcc 版本為:4.8.5 < 5.3 無法編譯
yum?-y?install?centos-release-scl
yum?-y?install?devtoolset-9-gcc?devtoolset-9-gcc-c++?devtoolset-9-binutils
#臨時有效,退出?shell?或重啟會恢復(fù)原?gcc?版本
scl?enable?devtoolset-9?bash
#長期有效
echo?"source?/opt/rh/devtoolset-9/enable"?>>/etc/profile
解壓redis-6.0.7.tar.gz ,并把redis-6.0.7目錄移動到/usr/local目錄
tar?-zxvf?redis-6.0.7.tar.gz?
mv?redis-6.0.7?/usr/local
cd?/usr/local/redis-6.0.7/編譯
make
cd?/usr/local/redis-6.0.7/src
make?install?PREFIX=/usr/local/redis最終會安裝到/usr/local/redis目錄下

移動配置文件到安裝目錄下
cd?/usr/local/redis-6.0.7/
mkdir?/usr/local/redis/etc
cp?redis.conf??/usr/local/redis/etc/
0x03:啟動Redis
對redis.conf配置文件進行修改
vi?/usr/local/redis/etc/redis.conf?
將daemonize no 改成daemonize yes,表示后臺啟動的意思
配置redis開機啟動
vi?/etc/rc.local?
在里面添加內(nèi)容:?(意思就是開機調(diào)用這段開啟redis的命令)
/usr/local/redis/bin/redis-server?/usr/local/redis/etc/redis.conf
啟動Redis
/usr/local/redis/bin/redis-server?/usr/local/redis/etc/redis.conf

將redis-cli、redis-server命令拷貝到/usr/local/bin目錄下,讓這兩個命令可以在任意目錄下直接使用
cp?/usr/local/redis/bin/redis-server?/usr/local/bin/
cp?/usr/local/redis/bin/redis-cli?/usr/local/bin/
0x04:Redis基本使用
啟動
redis-server?/usr/local/redis/etc/redis.conf?
停止
pkill?redis
卸載
#刪除安裝目錄
rm?-rf?/usr/local/redis
#刪除所有redis相關(guān)命令腳本
rm?-rf?/usr/bin/redis-*?
驗證redis服務(wù)是否啟動成功
redis-cli


掃碼二維碼
獲取更多精彩
Java樂園

