一、下載redis安裝包
進入redis
官網查看當前穩定版本:
https://redis.io/download/
發現此時的穩定版本是6.2.4
,
此時可以去這個網站下載6.2.4
穩定版本的tar
包。
暫時不考慮不在windows上使用redis,那樣將無法發揮redis的性能
二、上傳tar包到虛擬機并解壓
2.1 新建存放目錄并上傳tar包
# 進入/usr/local目錄
cd /usr/local/
# 新建soft目錄存放軟件
mkdir soft
# 進入剛新建的soft目錄下
cd soft
完成上述步驟使用finalshell
上傳redis
安裝包到/usr/local/soft
目錄下:
2.2 解壓tar包
tar -zxvf redis-6.2.4.tar.gz
三、安裝編譯環境并安裝redis
3.1 下載安裝最新版的gcc編譯器
1)安裝C 語言的編譯環境
# -y 對所有提問都說yes
yum -y install gcc
2)查看gcc版本
gcc --version
3.2 編譯redis
# 進入redis安裝目錄
cd /usr/local/soft/redis-6.2.4
# 執行編譯操作
make
如果沒有安裝gcc
直接進行make
會報錯:
# 表示沒有這個文件
Jemalloc/jemalloc.h
解決方案:
- 安裝
gcc
- 運行
make distclean
- 然后再進行
make
3.2 安裝redis
編譯完成之后,可以執行安裝命令。
make install
安裝完成之后/usr/local/bin
目錄下將會多出一些命令:
命令解析:
redis-benchmark
:測試電腦性能的redis-check-aof -> redis-server
:檢查修復aof
文件的,本質是執行了redis-server
文件redis-check-rdb -> redis-server
:檢查修復rdb
文件的,本質是執行了redis-server
文件redis-cli
:redis
自帶的客戶端,可以使用它來連接redis
服務端。(這個自帶的通常不會使用)redis-sentinel
:redis
哨兵,用于監控redis
集群中Master狀態的工具。redis-server
:啟動服務
四、啟動redis
4.1 前臺啟動
# 這個命令已經在環境變量當中,可以在任何位置使用它來啟動redis
redis-server
命令行窗口不能關閉,否則服務器停止。
4.2 后臺啟動
1)在/root目錄下創建myredis目錄
cd /root
mkdir myredis
cd /myredis
2)拷貝一份redis.conf到myredis目錄
cp /usr/local/soft/redis-6.2.4/redis.conf /root/myredis
3)修改配置文件,配置讓服務在后臺啟動
vim redis.conf
在247
行把daemonize no
改成yes
。
配置完成后Esc
鍵退出插入狀態,:wq
保存并退出。
4)使用新的配置文件啟動redis
redis-server /root/myredis/redis.conf
這樣服務啟動后就不會占用全屏窗口。
不放心的話也可以用下列命令查看redis
進程是否在運行:
ps -ef | grep redis
五、關閉redis
5.1 單實例關閉
redis-cli shutdown
也可以進入終端后關閉當前實例:
# 先進入redis客戶端終端
redis-cli
# 在終端里關閉redis
shutdown
5.2 多實例關閉
redis-cli -p 6379 shutdown
多實例時關閉時需要指定端口關閉
六、docker上部署redis
容器化部署已經是越來越主流的方式,比起在Linux
上直接安裝redis
要更加的方便和快捷。
6.1 在dockerHub上搜索redis
這里會有redis
鏡像的詳細使用說明,認準綠色部分的官方鏡像即可。
overview
中就是如何部署redis
容器的文檔,右邊黑框中的命令就是拉取redis
鏡像的命令。
6.2 創建本機存放redis配置和數據目錄
# 創建 redis 配置存放目錄
mkdir -p /usr/local/docker/redis/conf
# 創建 redis 數據存放目錄
mkdir -p /usr/local/docker/redis/data# 給剛創建的兩個目錄授權
chmod 777 /usr/local/docker/redis/conf
chmod 777 /usr/local/docker/redis/data
之所以這里創建目錄,是想使用docker數據卷掛載的第二種方式,直接使用磁盤掛載。
意思就是不使用數據卷,直接把本機的某個目錄和docker容器中的某個目錄進行關聯。
這樣只需要在本機上操作者兩個目錄中的內容,就可以直接同步修改docker容器中對應的目錄中的內容。
使用磁盤掛載的話,目錄需要自己維護。而使用數據卷掛載,docker會自動維護目錄,但是目錄比較深。
如果對數據卷不太了解,可以看我docker專欄下關于數據卷的介紹
6.3 運行容器
# 啟動 redis 容器
docker run -d -p 6379:6379 --name myRedis --restart=always -v /usr/local/docker/redis/data:/data -v /usr/local/docker/redis/conf/redis.conf:/etc/redis redisredis-server /etc/redis/redis.conf
docker鏡像中的redis默認都是沒有配置文件的,也就是說/etc/redis目錄下是空的
需要自己準備一個配置文件,放在/usr/local/docker/redis/conf/目錄下
選項解析:
-d
:后臺運行
-p
:將宿主機端口和容器端口相關聯,是指可以用宿主機的6379端口訪問容器的6379端口
--name
:啟動鏡像后,生成的容器的名稱
--restart
:配置重啟策略是always
這樣如果容器redis
無論什么情況停止了,docker
將自動重新啟動redis
容器
-v /usr/local/docker/redis/data:/data
:掛載redis
的數據目錄
-v /usr/local/docker/redis/conf/redis.conf:/etc/redis
:掛載redis
的配置文件目錄
redis
:需要啟動的用來創建容器的鏡像名稱
6.4 停止運行容器
docker stop myRedis
6.5 停止后重新運行容器
docker start myRedis
6.6 重啟容器
docker restart myRedis
6.7 刪除容器
# -f 強制移除正在運行的容器(不寫-f只能移除不在運行的容器)
docker rm -f myRedis