一、Redis簡介
Redis 是完全開源免費(fèi)的,遵守BSD協(xié)議,是一個高性能的key-value數(shù)據(jù)庫。
Redis 與其他 key - value 緩存產(chǎn)品有以下三個特點(diǎn):
- Redis支持?jǐn)?shù)據(jù)的持久化,可以將內(nèi)存中的數(shù)據(jù)保持在磁盤中,重啟的時候可以再次加載進(jìn)行使用。
- Redis不僅僅支持簡單的key-value類型的數(shù)據(jù),同時還提供list(列表),set(集合),zset(有序集合),hash(哈希表)等數(shù)據(jù)結(jié)構(gòu)的存儲。
- Redis支持?jǐn)?shù)據(jù)的備份,即master-slave(主從模式)模式的數(shù)據(jù)備份。
?zset原為sorted?set。為了避免sorted?set簡寫sset導(dǎo)致命令沖突,所以改為zset。同理例如class-->clazz
Redis與其他key-value存儲有什么不同?
- Redis有著更為復(fù)雜的數(shù)據(jù)結(jié)構(gòu)并且提供對他們的原子性操作,這是一個不同于其他數(shù)據(jù)庫的進(jìn)化路徑。Redis的數(shù)據(jù)類型都是基于基本數(shù)據(jù)結(jié)構(gòu)的同時對程序員透明,無需進(jìn)行額外的抽象。
- Redis運(yùn)行在內(nèi)存中但是可以持久化到磁盤,所以在對不同數(shù)據(jù)集進(jìn)行高速讀寫時需要權(quán)衡內(nèi)存,應(yīng)為數(shù)據(jù)量不能大于硬件內(nèi)存。在內(nèi)存數(shù)據(jù)庫方面的另一個優(yōu)點(diǎn)是, 相比在磁盤上相同的復(fù)雜的數(shù)據(jù)結(jié)構(gòu),在內(nèi)存中操作起來非常簡單,這樣Redis可以做很多內(nèi)部復(fù)雜性很強(qiáng)的事情。 同時,在磁盤格式方面他們是緊湊的以追加的方式產(chǎn)生的,因?yàn)樗麄儾⒉恍枰M(jìn)行隨機(jī)訪問。
二,Redis下載安裝
2.1下載地址:
https://github.com/tporadowski/redis/releases
2.2Linux安裝Redis
在我們之前使用的mobaxterm上連接的Linux管理中去解壓壓縮文件:
tar -zxvf redis-5.0.0.tar.gz
2.3解壓后執(zhí)行安裝gcc
yum install gcc
2.4.編譯Redis
進(jìn)入解壓后的文件夾執(zhí)行編譯Redis
make && make install
2.5.修改Redis為守護(hù)進(jìn)程
什么是守護(hù)進(jìn)程?
守護(hù)進(jìn)程就是我們啟動Redis之后還能輸入命令,如果我們不設(shè)置守護(hù)進(jìn)程你就會發(fā)行我們啟動Redis之后無法輸入其他的命令了
使用我們Linux快速查找命令:
:/daemonize
修改redis.conf文件將daemonize no 改為 daemonize yes
2.6.啟動Redis服務(wù)
/src/redis-server redis.conf
? ? ? ?通過查看是否能夠連接本地客戶端來驗(yàn)證:
./src/redis-cli
輸入一個ping?連接成功會自動返回一個pong,如果不返回就失敗了
????????
2.7.配置密碼且外部連接
執(zhí)行完第六步我們會發(fā)現(xiàn)我們連接Redis不要密碼!且只能本地連接外部連接連接不上,所以我們需要繼續(xù)配置。
修改redis.conf注文件中的內(nèi)容:注釋掉bind 127.0.0.1這行語句并修改requirepass 123456
2.8.重啟服務(wù)器
首先kill -9?進(jìn)程pid 關(guān)閉啟動的進(jìn)程ip
殺死進(jìn)程
kill -9 pid
查詢進(jìn)程
lsof -i:6379
啟動redis.conf的新配置? ?
./src/redis-server redis.conf
2.9.開放Redis端口號
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
2.10.redismanagerl連接測試?
已經(jīng)連接成功?。?!
我們的Linux安裝Redis就全部完成了?。?!
三、Windos安裝Redis
3.1.解壓安裝包
在bat中編寫
cd Redis-x64-3.2.100
redis-server redis.windows.conf
啟動bat文件
四、Redis基本操作語法
首先我們啟動Redis服務(wù)與本地客戶端連接
因?yàn)槲覀兗尤肓耸刈o(hù)進(jìn)程,所以要帶密碼和用戶端口連接
-h(主機(jī)ip)-p(端口) -a(密碼)
輸入ping:有個PONG說明登錄成功,否則要看看密碼。
接下來小編從常用的字符串、哈希表、列表分別來介紹一些常用方法,沒有介紹的大家都可以查看上面分享的學(xué)習(xí)網(wǎng)址,里面人家都有官方的。
4.1.字符串(String)
# set key ? ? ? ? ?//保存
set name zs
set age 12
set sex nan# get key ? ? ? ? ?//獲取
get name# type key ? ? ? ? //查看類型
#type age ? ? ? ? ? ?//string 說明type返回的是鍵值對存儲類型,而不是值存儲類型# keys *或keys key //查看所有或者指定的key
keys *# SETEX KEY_NAME TIMEOUT VALUE ? ?// 給鍵值對設(shè)置過期時間
setex zs 60 live# ttl key ? ?// 獲取鍵值對剩余的存活時間
ttl zs
4.2.哈希(Hash)
Redis hash 是一個string類型的field和value的映射表,hash特別適合用于存儲對象。
# hset key field1 value1 [field2 value2] ?#同時將多個field-value設(shè)置到哈希表key中
hset user name zs age 12 sex nv# hget key field ? ? ? ? ? ? ? ? ? ? ? ? ?#獲取指定的字段值
hget user age# hdel key field ? ? ? ? ? ? ? ? ? ? ? ? ?#刪除指定的字段值
hdel user age# hgetall key ? ? ? ? ? ? ? ? ? ? ? ? ? ? #查詢指定key的所有字段
hgetall user# hexists key field ? ? ? ? ? ? ? ? ? ? ? #查詢指定key中的字段是否存在
hexists user name# hlen key ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#獲取指定key中的長度
hlen user
4.3.列表(List)
Redis列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素到列表的頭部(左邊)或者尾部(右邊)
# lpush key value1 value2 value3 ? ? ? ? ?#將一個或多個值插入到列表頭部
lpush en a b c d e f g# llen key ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#獲取列表的長度
llen en# lindex key index ? ? ? ? ? ? ? ? ? ? ? ?#根據(jù)索引獲取列表中的元素
lindex en 1 ? ? #返回f,說明下標(biāo)從0開始,同時先進(jìn)后出# lrange key start sop ? ? ? ? ? ? ? ? ? ?#查看指定范圍內(nèi)的元素
lrange en 1 3 ? ?#返回fed,說明下標(biāo)從0開始,同時先進(jìn)后出
4.4.集合(Set)
Redis 的 Set 是 String 類型的無序集合。集合成員是唯一的,這就意味著集合中不能出現(xiàn)重復(fù)的數(shù)據(jù)。
# sadd key value1 [value2] ? ? ? ? ? ? ? ?#向集合添加一個或多個元素
sadd hobby lanqiu zuqiu bingpangqiu zhuoqiu# scard key ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #獲取集合中的元素數(shù)量
scard hobby# exists key ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#是否存在
exists hobby文章來源:http://www.zghlxwxcb.cn/news/detail-740762.html
除了以上命令,Redis還提供了一些其他的集合命令,如SMOVE、SSCAN等,用于集合的移動和集合的掃描等操作。文章來源地址http://www.zghlxwxcb.cn/news/detail-740762.html
到了這里,關(guān)于【Redis】Redis在Linux與windows上的安裝&基本操作語法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!