redis如何更新升級(jí)版本
redis更新升級(jí)版本
注意,在看本教程前,請(qǐng)先自行備份配置文件以及數(shù)據(jù)。
如果持久化用的是rdb,備份.rdb文件,默認(rèn)叫dump.rdb,如果你更改為其他名字,請(qǐng)自行查看配置,你的.rdb叫什么。
完成本教程后,把.rdb文件放入redis的啟動(dòng)目錄即可。
不知道啟動(dòng)目錄,就在redis-cil 命令行輸入config get dir查看
如果持久化用的是aof,備份.aof文件,默認(rèn)叫appendonly.aof
本教程寫的時(shí)候是redis版本是 redis-6.0.9 ,如果高于此版本或者低于此版本,目錄結(jié)果不一樣,請(qǐng)安裝redis-6.0.9 版本,把文中的 redis-X.X.X 替換為 redis-6.0.9
系統(tǒng)版本
Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-64-generic x86_64)
使用 ping 命令 查看一下網(wǎng)絡(luò)
ping www.baidu.com
網(wǎng)絡(luò)沒問題后使用 apt-get update 命令進(jìn)行更新系統(tǒng)
apt-get update
如果是通過(guò) apt-get install redis-server 方式安裝的 redis ,可以輸入 apt-get remove --purge redis-server 進(jìn)行redis的卸載操作,輸入此命令會(huì)問你是否卸載,輸入 Y 確認(rèn)卸載 redis 。
然后輸入 redis-server -v 查看是否卸載完成,如果出現(xiàn)提示 Command 'redis-server' not found 說(shuō)明卸載成功。
apt-get remove --purge redis-server # 會(huì)詢問是否卸載,輸入 Y 確認(rèn)卸載 Y redis-server -v
檢查是否安裝了 gcc ,輸入 gcc --version 進(jìn)行查看是否安裝了 gcc ,如果出現(xiàn)
Command 'gcc' not found,but can be installed with: apt install gcc
則說(shuō)明沒用安裝 gcc,需要輸入 apt install gcc 進(jìn)行安裝。
然后再次輸入 gcc --versio 查看是否安裝成功
gcc --version # 如果出現(xiàn) Command 'gcc' not found,but can be installed with: apt install gcc # 則說(shuō)明沒用安裝 gcc ,需要輸入 apt install gcc 進(jìn)行安裝 apt install gcc # 會(huì)問你是否繼續(xù)安裝,輸入 Y 繼續(xù)安裝 Y
然后進(jìn)入 /usr/local 目錄下載 redis 最新安裝壓縮包,安裝完成后輸入 ls 可以查看到下載成功的文件 redis-x.x.x.taz.gz。
去 redis官網(wǎng) 查看下載鏈接以及最新版本。
cd /usr/local # 進(jìn)入 /usr/local 目錄 wget https://download.redis.io/releases/redis-X.X.X.tar.gz # 下載最新的 redis ,此處我用 X.X.X 代替,因?yàn)?redis 是一直在更新的,所以你自己去官方查看 ls # 看到有 redis-x.x.x.taz.gz ,說(shuō)明下載成功
然后解壓 redis-x.x.x.taz.gz ,輸入 ls 查看解壓后的目錄 redis-x.x.x ,然后進(jìn)入 redis-x.x.x 目錄,輸入 make 進(jìn)行編譯,編譯完成后 進(jìn)入 src 目錄,輸入 make install 進(jìn)行安裝
tar xzf redis-x.x.x.taz.gz
# 解壓壓縮包
ls
# 查看解壓后的目錄 redis-x.x.x
cd redis-x.x.x
# 進(jìn)入解壓后的 redis-x.x.x 目錄
make
# 進(jìn)行編譯,此處時(shí)間可能會(huì)有點(diǎn)久
cd src && make install
# 進(jìn)入src 目錄并進(jìn)行安裝
# 出現(xiàn)下面顯示,說(shuō)明安裝成功
/bin/sh: 1: pkg-config: not foud
cc Makefile.dep
/bin/sh: 1: pkg-config: not foud
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
然后創(chuàng)建 /etc/redis 目錄,把 /usr/local/redis-X.X.X/redis.conf 文件 復(fù)制到 /etc/redis/redis.conf
復(fù)制完成后,再把 /usr/local/redis-.X.X.X/utils/redis_init_script文 件復(fù)制到 /etc/init.d/redis
mkdir -p /etc/redis # 創(chuàng)建 /etc/redis 目錄 cp /usr/local/redis-X.X.X/redis.conf /etc/redis/redis.conf # 把配置文件復(fù)制到 /etc/redis 目錄下 cp /usr/local/redis-.X.X.X/utils/redis_init_script /etc/init.d/redis # 把啟動(dòng)腳本復(fù)制到 /etc/init.d 目錄下,通常都以d結(jié)尾表示是后臺(tái)自啟動(dòng)服務(wù)
然后進(jìn)行 redis配置文件設(shè)置
sed -i 's/daemonize no/daemonize yes/g' /etc/redis/redis.conf # 把 daemonize 設(shè)置為 yes ,因?yàn)閞edis 默認(rèn)不開啟守護(hù)進(jìn)程模式 sed -i 's/bind 127.0.0.1/bind */g' /etc/redis/redis.conf # 如果要開啟遠(yuǎn)程訪問,就進(jìn)行修改,* 代表任何地址都能訪問,redis 默認(rèn)是 # 只能本地訪問,不過(guò)不想任何地址都能訪問,就把 * 改成你的IP地址 sed -i 's/# requirepass foobared/requirepass 123456/g' /etc/redis.conf # 此命令是設(shè)置redis密碼設(shè)置成123456,redis默認(rèn)是沒有密碼的。 # 如果你不想設(shè)置密碼,可以不輸入此命令設(shè)置密碼
最后設(shè)置開機(jī)自啟redis以及啟動(dòng)redis服務(wù)
update-rc.d -f redis defaults # 設(shè)置開機(jī)執(zhí)行腳本,也就是添加開機(jī)自啟 service redis start # 啟動(dòng)redis服務(wù) redis-server -v # 查看redis版本號(hào),驗(yàn)證一下是否啟動(dòng)成功 ps -ef|grep redis # 也可以輸入此命令查看redis是否啟動(dòng)成功
遇到的錯(cuò)誤解決方案
如果遇到權(quán)限不足,切換成 root 用戶或者命令加上 sudo
輸入 redis-server 報(bào)錯(cuò)
bash: /usr/bin/redis-server: No such file or directory
解決方案
1、重啟一下服務(wù)器。
2、或者建立軟連接
ln -s /usr/bin/redis-server /usr/local/bin/redis-server
3、或者添加環(huán)境變量path
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
分布式架構(gòu)Redis中有哪些數(shù)據(jù)結(jié)構(gòu)及底層實(shí)現(xiàn)原理
這篇文章主要為大家介紹了分布式架構(gòu)Redis中有哪些數(shù)據(jù)結(jié)構(gòu)及底層的實(shí)現(xiàn)原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03
RedisDesktopManager無(wú)法遠(yuǎn)程連接Redis的完美解決方法
下載RedisDesktopManager客戶端,輸入服務(wù)器IP地址,端口(缺省值:6379);點(diǎn)擊Test Connection按鈕測(cè)試連接,連接失敗,怎么回事呢?下面小編給大家?guī)?lái)了RedisDesktopManager無(wú)法遠(yuǎn)程連接Redis的完美解決方法,一起看看吧2018-03-03
關(guān)于Redis最常見的十道面試題總結(jié)大全
Redis作為一個(gè)高性能的內(nèi)存數(shù)據(jù)存儲(chǔ)系統(tǒng),具有快速讀寫、持久性、數(shù)據(jù)結(jié)構(gòu)多樣性等特點(diǎn),廣泛應(yīng)用于各種應(yīng)用場(chǎng)景,這篇文章主要給大家介紹了關(guān)于Redis最常見的十道面試題總結(jié)的相關(guān)資料,需要的朋友可以參考下2024-07-07
Redis鏈表底層實(shí)現(xiàn)及生產(chǎn)實(shí)戰(zhàn)
Redis 的 List 是一個(gè)雙向鏈表,鏈表中的每個(gè)節(jié)點(diǎn)都包含了一個(gè)字符串。是redis中最常用的數(shù)據(jù)結(jié)構(gòu)之一,本文主要介紹了Redis鏈表底層實(shí)現(xiàn)及生產(chǎn)實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Redis KEYS查詢大批量數(shù)據(jù)替代方案
在使用 Redis 時(shí),KEYS 命令雖然簡(jiǎn)單直接,但其全表掃描的特性在處理大規(guī)模數(shù)據(jù)時(shí)會(huì)導(dǎo)致性能問題,甚至可能阻塞 Redis 服務(wù),本文將介紹SCAN命令、有序集合、哈希表和RediSearch模塊四種替代 KEYS 的高效方案,需要的朋友可以參考下2024-12-12

