什么是redis
根據(jù)百度百科介紹,Redis(Remote Dictionary Server ),即遠(yuǎn)程字典服務(wù),是一個(gè)開(kāi)源的使用ANSI C語(yǔ)言編寫(xiě)、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、是一個(gè)高性能(NOSQL)Key-Value數(shù)據(jù)庫(kù),并提供多種語(yǔ)言的API,redis也是完全開(kāi)源免費(fèi)的,遵守BSD協(xié)議。
什么又是NOSQL
NOSQL,泛指非關(guān)系型的數(shù)據(jù)庫(kù),提到非關(guān)系型的數(shù)據(jù)庫(kù),我們就來(lái)簡(jiǎn)單講講關(guān)系型數(shù)據(jù)庫(kù),關(guān)系型數(shù)據(jù)庫(kù),大家都知道的oracle,mysql,postgre等都是關(guān)系型數(shù)據(jù)庫(kù),是指采用了關(guān)系模型來(lái)組織數(shù)據(jù)的數(shù)據(jù)庫(kù),其以行和列的形式存儲(chǔ)數(shù)據(jù),以便于用戶(hù)理解,關(guān)系型數(shù)據(jù)庫(kù)這一系列的行和列被稱(chēng)為表,一組表組成了數(shù)據(jù)庫(kù),表與表之間使用主外鍵,建立關(guān)聯(lián)關(guān)系,1對(duì)1,1對(duì)多,多對(duì)多等,用戶(hù)通過(guò)SQL查詢(xún)來(lái)檢索數(shù)據(jù)庫(kù)中的數(shù)據(jù),而NOSQL,即Not Only SQL它是關(guān)系型數(shù)據(jù)庫(kù)的一種良好補(bǔ)充。
為什么我們要使用redis
大家都知道,關(guān)系型數(shù)據(jù)庫(kù)的數(shù)據(jù)都是存儲(chǔ)在硬盤(pán)中,例如微博這樣的網(wǎng)站,每秒上萬(wàn)次的訪問(wèn)需求,甚至十幾萬(wàn)次的訪問(wèn)需求,對(duì)硬盤(pán)io的讀寫(xiě)要求是極高的,普通的數(shù)據(jù)庫(kù)是難以應(yīng)付的,在這樣超大規(guī)模和高并發(fā)的場(chǎng)景下,出現(xiàn)了NOSQL的產(chǎn)品,redis,大家都知道redis,是把數(shù)據(jù)存儲(chǔ)在內(nèi)存中,省去了硬盤(pán)io讀寫(xiě)時(shí)間,對(duì)海量數(shù)據(jù)的高效率存儲(chǔ)和訪問(wèn)需求,效率也就大大的提高了,每個(gè)大廠幾乎都在使用。
redis的優(yōu)缺點(diǎn)
優(yōu)點(diǎn)就是,數(shù)據(jù)對(duì)存儲(chǔ)在內(nèi)存中,省去了硬盤(pán)io讀寫(xiě)操作,大大提升了網(wǎng)站的訪問(wèn)效率,以key-value形式存儲(chǔ),可以達(dá)到快速查詢(xún),缺點(diǎn)就是比關(guān)系型數(shù)據(jù)庫(kù)的存儲(chǔ)類(lèi)型少,當(dāng)服務(wù)器關(guān)機(jī)后,內(nèi)存釋放后,數(shù)據(jù)都會(huì)消失,就需要我們手動(dòng),定期將數(shù)據(jù)同步到硬盤(pán)中。
下面我們就動(dòng)手安裝吧。
安裝redis 從docker倉(cāng)庫(kù)中拉取鏡像
# docker pull redis
出現(xiàn)下邊的信息,說(shuō)明拉取鏡像成功
Using default tag: latest
latest: Pulling from library/redis
54fec2fa59d0: Already exists
9c94e11103d9: Pull complete
04ab1bfc453f: Pull complete
a22fde870392: Pull complete
def16cac9f02: Pull complete
1604f5999542: Pull complete
Digest: sha256:f7ee67d8d9050357a6ea362e2a7e8b65a6823d9b612bc430d057416788ef6df9
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest
確認(rèn)鏡像信息
# docker images
確認(rèn)redis鏡像信息,本文在寫(xiě)的時(shí)候,redis在9天前發(fā)布了6.0版本,正好試用下。
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest f9b990972689 9 days ago 104MB
mysql latest a7a67c95e831 13 days ago 541MB
創(chuàng)建redis配置文件所需目錄以及配置文件
# mkdir -p /mydata/redis/conf
# cd /mydata/redis/conf
# touch redis.conf
配置redis持久化(由于redis默認(rèn)是將數(shù)據(jù)保存在內(nèi)存中,redis重啟后,數(shù)據(jù)會(huì)消失,這里的配置是將數(shù)據(jù)同步到磁盤(pán)中)
# vi redis.conf
添加appendonly yes
退出并保存
啟動(dòng)redis
# docker run --name myredis -p 6379:6379 -v /mydata/redis/data:/data -v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --requirepass "123456"
--name就是給redis實(shí)例起個(gè)名字
-d就是后臺(tái)運(yùn)行
-p將docker的6379端口映射到linux服務(wù)器6379端口上
--requirepass就是給redis設(shè)定一個(gè)密碼
啟動(dòng)完成后,看是否啟動(dòng)成功
# docker ps -a
出現(xiàn)下邊信息,尤其是STATUS是UP的狀態(tài),說(shuō)明啟動(dòng)成功
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72bae285e236 redis "docker-entrypoint.s…" 35 seconds ago Up 33 seconds 0.0.0.0:6379->6379/tcp myredis
使用redis-cli操作redis
# docker exec -it myredis redis-cli -a 123456
-a 就是使用我們?cè)诎惭b時(shí)設(shè)置的密碼
出現(xiàn)下邊命令行,說(shuō)明我們就可以操作redis,當(dāng)然windows也有操作redis客戶(hù)端的工具,更加直觀,看個(gè)人習(xí)慣用什么吧
127.0.0.1:6379>
簡(jiǎn)單的操作redis
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> set name iosoft2020
OK
127.0.0.1:6379>
127.0.0.1:6379> get name
"iosoft2020"
127.0.0.1:6379>
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379>
127.0.0.1:6379>
到這里,安裝完成,使用過(guò)傳統(tǒng)安裝redis的小伙伴會(huì)深有體會(huì),從官網(wǎng)下載安裝包,解壓,編譯,啟動(dòng)等,非常的麻煩,費(fèi)時(shí)間,使用docker安裝redis非常簡(jiǎn)單吧,大家可以動(dòng)手試一試。
以上就是5分鐘教你docker安裝redis到啟動(dòng)教程(全新方式)的詳細(xì)內(nèi)容,更多關(guān)于docker安裝redis的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:- docker安裝redis并以配置文件方式啟動(dòng)詳解
- Docker安裝Redis并介紹可視化客戶(hù)端進(jìn)行操作
- docker安裝redis5.0.3的方法步驟
- docker安裝redis 5.0.7并掛載外部配置和數(shù)據(jù)問(wèn)題
- linux環(huán)境部署及docker安裝redis的方法
- Docker安裝官方Redis鏡像并啟用密碼認(rèn)證