【Redis學(xué)習(xí)筆記01】快速入門(含安裝教程)
1. Redis相關(guān)概念
先來看門見山的給出Redis
的概念:
Redis:是一種基于內(nèi)存的高性能K-V鍵值型NoSQL數(shù)據(jù)庫
Redis官網(wǎng):https://redis.io/
1.1 初識NoSQL
想必大家都對關(guān)系型數(shù)據(jù)庫更為熟悉!如MySQL、Oracle、SQL Server都是比較常見的關(guān)系型數(shù)據(jù)庫,所謂關(guān)系型數(shù)據(jù)庫主要以二維表作為數(shù)據(jù)結(jié)構(gòu)進(jìn)行存儲,但是也有很多數(shù)據(jù)庫不以二維表作為數(shù)據(jù)結(jié)構(gòu)存儲,例如Redis、MongoDB等等,我們常常用NoSQL泛指這些非關(guān)系型數(shù)據(jù)庫
。
SQL | NoSQL | |
---|---|---|
數(shù)據(jù)結(jié)構(gòu) | 結(jié)構(gòu)化(structured) | 非結(jié)構(gòu)化 |
數(shù)據(jù)關(guān)聯(lián) | 有關(guān)聯(lián)的(relational) | 無關(guān)聯(lián)的 |
查詢方式 | SQL語言查詢 | 非SQL語言 |
事務(wù)特性 | ACID | BASE |
存儲方式 | 硬盤 | 內(nèi)存 |
下面對上述SQL與NoSQL的區(qū)別做簡要解釋:
- 數(shù)據(jù)結(jié)構(gòu):SQL型數(shù)據(jù)庫具有二維表、約束等等強(qiáng)結(jié)構(gòu)性特征,而NoSQL相對來說更加自由,例如有K-V結(jié)構(gòu)的Redis,文檔結(jié)構(gòu)(Document)的MongoDB,甚至還有圖型結(jié)構(gòu)
- 數(shù)據(jù)關(guān)聯(lián):SQL型數(shù)據(jù)庫具有外鍵等關(guān)聯(lián)性特征,而NoSQL數(shù)據(jù)之間往往無關(guān)聯(lián)性
-
查詢方式:SQL型數(shù)據(jù)庫一般遵循SQL語言標(biāo)準(zhǔn),例如查詢語句固定為
select * from 表名
,但是NoSQL查詢方式各不相同 - 事務(wù)特性:SQL型數(shù)據(jù)庫往往遵循ACID特性,而NoSQL事務(wù)較為缺乏
1.2 初識Redis
Redis誕生于2009年,全程是Remote Dictionary Server
,即遠(yuǎn)程辭典服務(wù)器,是一個基于內(nèi)存的鍵值型NoSQL數(shù)據(jù)庫,其具有以下特征:
特征:
- 鍵值(Key-Value)型,value值支持多種不同的數(shù)據(jù)結(jié)構(gòu)
- 單線程,其命令具有原子性特征
- 低延時(shí),速率快(基于內(nèi)存、IO多路復(fù)用、良好編碼)
- 支持?jǐn)?shù)據(jù)的持久化操作
- 支持主從集群、分片集群
- 支持多種語言客戶端(Java、C++、Go等等)
2. Redis安裝步驟
由于大多數(shù)企業(yè)項(xiàng)目都部署在Linux服務(wù)器上,而且Redis官網(wǎng)也沒有提供Windows版的安裝包,因此我們這里使用Linux環(huán)境進(jìn)行安裝。
注:本人演示時(shí)使用的是云服務(wù)器,讀者完全可以使用本地虛擬機(jī)進(jìn)行安裝
2.1 安裝Redis依賴
由于Redis是用C語言編寫的,因此我們安裝Redis之前需要安裝gcc依賴yum install -y gcc tcl
看到下圖所示Complete!說明安裝成功
2.2 解壓Redis安裝包
安裝包鏈接:https://pan.baidu.com/s/1f9WYyvdKT8W7Q80x0naSUQ?pwd=tzem
提取碼:tzem
選擇一個路徑進(jìn)行傳輸,我這里是/usr/local/src
接下來使用解壓命令進(jìn)行解壓tar -xzf redis-6.2.6.tar.gz
此時(shí)發(fā)現(xiàn)當(dāng)前目錄已經(jīng)有解壓后的redis安裝包了!
2.3 安裝編譯Redis
-
進(jìn)入Redis所在目錄
cd redis-6.2.6
-
運(yùn)行編譯命令:
make && make install
如果沒報(bào)錯那大概率是安裝成功了嘻嘻!
-
默認(rèn)的安裝路徑在
/usr/local/bin
目錄下
其中:
redis-cli:是redis提供的命令行客戶端
redis-server:是redis的服務(wù)端啟動腳本
redis-sentinel:是redis的哨兵啟動腳本
2.4 Redis啟動方式
- 默認(rèn)啟動
- 指定配置啟動
- 開啟自啟
2.4.1 默認(rèn)啟動
安裝完成后,會自動配置redis的環(huán)境變量,我們可以在任意路徑下輸入redis-server
命令即可啟動redis服務(wù)。redis-server
如圖所示:redis服務(wù)已經(jīng)啟動成功了!
這種啟動方式屬于前臺啟動,當(dāng)前服務(wù)會占用整個會話窗口,如果窗口關(guān)閉就會停止redis服務(wù),因此不推薦使用!
2.4.2 指定配置啟動
如果想要讓redis以后臺方式啟動,那么我們需要設(shè)置啟動的配置項(xiàng)文件redis.conf
- 進(jìn)入redis.conf所在目錄(即安裝目錄):
cd /usr/local/src/redis-6.2.6
- 我們先將配置文件拷貝一份
cp redis.conf redis.conf.bak
- 使用編輯器修改配置文件相關(guān)內(nèi)容:
# 允許訪問的地址,默認(rèn)是127.0.0.1,會導(dǎo)致只能在本地訪問。修改為0.0.0.0則可以在任意IP訪問,生產(chǎn)環(huán)境不要設(shè)置為0.0.0.0
bind 0.0.0.0
# 守護(hù)進(jìn)程,修改為yes后即可后臺運(yùn)行
daemonize yes
# 密碼,設(shè)置后訪問Redis必須輸入密碼
requirepass xxxxxx
# 監(jiān)聽的端口
port 6379
# 工作目錄,默認(rèn)是當(dāng)前目錄,也就是運(yùn)行redis-server時(shí)的命令,日志、持久化等文件會保存在這個目錄
dir .
# 數(shù)據(jù)庫數(shù)量,設(shè)置為1,代表只使用1個庫,默認(rèn)有16個庫,編號0~15
databases 1
# 設(shè)置redis能夠使用的最大內(nèi)存
maxmemory 512mb
# 日志文件,默認(rèn)為空,不記錄日志,可以指定日志文件名
logfile "redis.log"
- 啟動redis
# 進(jìn)入redis安裝目錄
cd /usr/local/src/redis.6.2.6
# 啟動
redis-server redis.conf
如何檢查我們已經(jīng)啟動了呢?使用命令:ps -ef | grep redis
查看運(yùn)行的進(jìn)程
2.4.3 開機(jī)自啟
-
首先新建一個系統(tǒng)服務(wù)文件:
vi /etc/systemd/system/redis.service
文章來源:http://www.zghlxwxcb.cn/news/detail-816283.html -
內(nèi)容如下:文章來源地址http://www.zghlxwxcb.cn/news/detail-816283.html
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-6.2.6/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- 然后重載系統(tǒng)服務(wù):
systemctl daemon-reload
- 現(xiàn)在我們可以用以下命令進(jìn)行操作了
# 啟動
systemctl start redis
# 停止
systemctl stop redis
# 重啟
systemctl restart redis
# 查看狀態(tài)
systemctl status redis
- 執(zhí)行以下命令讓redis開機(jī)自啟:
systemctl enable redis
到了這里,關(guān)于【Redis學(xué)習(xí)筆記01】快速入門(含安裝教程)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!