網(wǎng)上關(guān)于redis的安裝和使用教程有很多,有很多都是相互的摘抄轉(zhuǎn)載,甚至不夠完整詳細(xì),為此,我在這重新整理了一篇,也為了以后的學(xué)習(xí)、安裝、使用不再浪費(fèi)查找文檔的時(shí)間。(安裝親測有效)
1.關(guān)于redis
REmote DIctionary Server(Redis) 是一個(gè)由Salvatore Sanfilippo寫的key-value存儲系統(tǒng)。
Redis是一個(gè)開源的使用ANSI C語言編寫、遵守BSD協(xié)議、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API。
它通常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器,因?yàn)橹担╲alue)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等類型。
簡介
- Redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤中,重啟的時(shí)候可以再次加載進(jìn)行使用。
- Redis不僅僅支持簡單的key-value類型的數(shù)據(jù),同時(shí)還提供list,set,zset,hash等數(shù)據(jù)結(jié)構(gòu)的存儲。
- Redis支持?jǐn)?shù)據(jù)的備份,即master-slave模式的數(shù)據(jù)備份
優(yōu)勢
- 性能極高 – Redis能讀的速度是110000次/s,寫的速度是81000次/s 。
- 豐富的數(shù)據(jù)類型 – Redis支持二進(jìn)制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 數(shù)據(jù)類型操作。
- 原子 – Redis的所有操作都是原子性的,意思就是要么成功執(zhí)行要么失敗完全不執(zhí)行。單個(gè)操作是原子性的。多個(gè)操作也支持事務(wù),即原子性,通過MULTI和EXEC指令包起來。
- 豐富的特性 – Redis還支持 publish/subscribe, 通知, key 過期等等特性。
2.安裝
官網(wǎng)下載redis安裝包 https://redis.io/download

放到 /usr/local/package 目錄下面(可新建文件夾) , 解壓文件 :
# tar -zxvf redis-5.0.3.tar.gz
進(jìn)入到解壓后的目錄 :
# cd redis-5.0.3
編譯程序:
# make
安裝到指定目錄:
# make install PREFIX=/usr/local/redis
安裝完成
這時(shí)redis已安裝完成,需將配置文件redis.conf移動(dòng)到上一步的安裝目錄之下:
# mv redis.conf /usr/local/redis/etc/redis.conf
這一步需要在/usr/local/redis目下新建一個(gè)etc文件夾
移動(dòng)過去之后,啟動(dòng)redis服務(wù)器:
# /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
注:這是用配置文件redis.conf啟動(dòng)的

以上啟動(dòng)只是臨時(shí)啟動(dòng),后臺運(yùn)行和開機(jī)啟動(dòng)需要編輯配置文件:
# vim /usr/local/redis/etc/redis.conf
將daemonize 的值改為 yes

讓 Redis 開機(jī)啟動(dòng) :
# vim /etc/rc.local
在該配置文件中加入
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis-conf
esc +:wq 保存退出
修改完之后在運(yùn)行一下
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
redis已經(jīng)在后臺運(yùn)行了

3.相關(guān)配置參數(shù)
/usr/local/redis/bin 目錄下的幾個(gè)文件用途 :
redis-benchmark : Redis 性能測試工具
redis-check-aof : 檢查 aof 日志的工具
redis-check-dump : 檢查 rdb 日志的工具
redis-cli : 連接用的客戶端
redis-server : Redis 服務(wù)進(jìn)程
Redis 的配置項(xiàng)解析 :
daemonize : 如需要在后臺運(yùn)行 , 把該項(xiàng)的值改為 yes
pdifile : 把 pid 文件放在 /var/run/redis.pid , 可以配置到其他地址
bind : 指定 Redis 只接收來自該 IP 的請求 , 如果不設(shè)置 , 那么將處理所有請求 , 在生產(chǎn)環(huán)節(jié)中最好設(shè)置該項(xiàng)
port : 監(jiān)聽端口 , 默認(rèn)為 6379
timeout : 設(shè)置客戶端連接時(shí)的超時(shí)時(shí)間 , 單位為秒
loglevel : 等級分為 4 級 , debug , revbose , notice 和 warning , 生產(chǎn)環(huán)境下一般開啟 notice
logfile : 配置 log 文件地址 , 默認(rèn)使用標(biāo)準(zhǔn)輸出 , 即打印在命令行終端的端口上
database : 設(shè)置數(shù)據(jù)庫的個(gè)數(shù) , 默認(rèn)使用的數(shù)據(jù)庫是 0
save : 設(shè)置 redis 進(jìn)行數(shù)據(jù)庫鏡像的頻率
rdbcompression : 在進(jìn)行鏡像備份時(shí) , 是否進(jìn)行壓縮
dbfilename : 鏡像備份文件的文件名
dir : 數(shù)據(jù)庫鏡像備份的文件放置的路徑
slaveof : 設(shè)置該數(shù)據(jù)庫為其他數(shù)據(jù)庫的從數(shù)據(jù)庫
masterauth : 當(dāng)主數(shù)據(jù)庫連接需要密碼驗(yàn)證時(shí) , 在這里設(shè)定
requirepass : 設(shè)置客戶端連接后進(jìn)行任何其他指定前需要使用的密碼
maxclients : 限制同時(shí)連接的客戶端數(shù)量
maxmemory : 設(shè)置redis能夠使用的最大內(nèi)存
appendonly : 開啟 appendonly 模式后 , Redis 會把每一次所接收到的寫操作都追加到 appendonly.aof 文件中 , 當(dāng) Redis 重新啟動(dòng)時(shí) , 會從該文件恢復(fù)出之前的狀態(tài)
appendfsync : 設(shè)置 appendonly.aof 文件進(jìn)行同步的頻率
vm_enabled : 是否開啟虛擬內(nèi)存支持
vm_swap_file : 設(shè)置虛擬內(nèi)存的交換文件的路徑
vm_max_momery : 設(shè)置開啟虛擬內(nèi)存后 , Redis 將使用的最大物理內(nèi)存的大小 , 默認(rèn)為 0
vm_page_size : 設(shè)置虛擬內(nèi)存頁的大小
vm_pages : 設(shè)置交換文件的總的page數(shù)量
vm_max_thrrads : 設(shè)置 vm IO 同時(shí)使用的線程數(shù)量
widdows可視化工具的安裝和使用
下載
官網(wǎng)下載:https://redisdesktop.com/download
github地址:https://github.com/uglide/RedisDesktopManager/releases
建議直接百度云盤下載:
百度網(wǎng)盤:http://pan.baidu.com/s/1kU8sY3P
安裝

名稱自取,redis默認(rèn)安裝是沒有密碼的, host:服務(wù)器ip,端口6379
提示:
連接之前需要到云服務(wù)器控制臺開放6379端口。

錯(cuò)誤解決
1.客戶端連接時(shí) , 提示 DENIED Redis is running in protected mode because protected mode is enabled...

- 將配置文件里的 protected mode改為了 no , 原本是 yes
2.客戶端連接時(shí) , 提示 Connection refused...
- 可能是配置文件里面的 bind 字段設(shè)置了入口 IP , 將其注釋
其間可以ping一下6379端口,看看能否ping通。

以上錯(cuò)誤解決了,基本上就連的通了:
