Redis介紹
1.Redis是一個(gè)高性能的key-value數(shù)據(jù)庫(kù)
2.Redis是 NoSQL技術(shù)陣營(yíng)中的一員月褥,它通過(guò)多種鍵值數(shù)據(jù)類(lèi)型來(lái)適應(yīng)不同場(chǎng)景下的存儲(chǔ)需求,借助一些高層級(jí)的接口使用其可以勝任腮郊,如緩存、隊(duì)列系統(tǒng)的不同角色
Redis特性
1.Redis支持?jǐn)?shù)據(jù)的持久化筹燕,可以將內(nèi)存中的數(shù)據(jù)保存在磁盤(pán)中轧飞,重啟的時(shí)候可以再次加載進(jìn)行使用衅鹿。
2.Redis不僅僅支持簡(jiǎn)單的key-value類(lèi)型的數(shù)據(jù),同時(shí)還提供list过咬,set大渤,zset,hash等數(shù)據(jù)結(jié)構(gòu)的存儲(chǔ)
3.Redis支持?jǐn)?shù)據(jù)的備份掸绞,即master-slave模式的數(shù)據(jù)備份泵三。
數(shù)據(jù)結(jié)構(gòu)
1.redis是key-value的數(shù)據(jù)結(jié)構(gòu),每條數(shù)據(jù)都是一個(gè)鍵值對(duì)
2.鍵的類(lèi)型是字符串
3.注意:鍵不能重復(fù)
4.值的類(lèi)型分為五種:
? ??
字符串(string)
? ??
哈希(hash)
? ??
列表(list)
? ??
集合(set)
? ??
有序集合(zset)
String類(lèi)型
字符串類(lèi)型是Redis中最為基礎(chǔ)的數(shù)據(jù)存儲(chǔ)類(lèi)型衔掸,它在Redis中是二進(jìn)制安全的烫幕,這便意味著該類(lèi)型可以接受任何格式的數(shù)據(jù),如JPEG圖像數(shù)據(jù)或Json對(duì)象描述信息等敞映。在Redis中字符串類(lèi)型的Value最多可以容納的數(shù)據(jù)長(zhǎng)度是512M较曼。
添加
如果設(shè)置的鍵不存在則為添加,如果設(shè)置的鍵已經(jīng)存在則修改
設(shè)置鍵值
set key value
例:設(shè)置鍵為name值為itcast的數(shù)據(jù)
set name itcast
設(shè)置鍵值及過(guò)期時(shí)間
setex key seconds value
例:設(shè)置鍵為aa值為aa過(guò)期時(shí)間為3秒的數(shù)據(jù)
setex aa 3 aa
設(shè)置多個(gè)鍵
mset key1 value1 key2 value2...
例:設(shè)置鍵為a1值為python驱显、鍵為a2值為java
mset a1 python a2 java
追加值
append key value
例:向鍵為a1中追加值haha
append a1 haha
獲取
獲仁摺:根據(jù)鍵獲取值,如果不存在次鍵則返回nil
get key
例:獲取鍵name的值
get name
根據(jù)多個(gè)鍵獲取多個(gè)值
mget key1 key2 ...
例:獲取鍵a1埃疫、a2伏恐、a3的值
mget a1 a2 a3
刪除
del key1 key2...
例:刪除鍵a2、a3
del a2 a3
鍵命令
查看所有鍵
keys *
例:查看名稱(chēng)中包含a的鍵
keys a*
判斷鍵是否存在栓霜,如果存在返回1翠桦,不存在返回0
exists key1
例:判斷鍵a1是否存在
exists a1
查看鍵對(duì)應(yīng)的value的類(lèi)型?
type key
例:查看a1的值類(lèi)型,為redis支持的五種類(lèi)型中的一種
type a1
設(shè)置過(guò)期時(shí)間胳蛮,以秒為單位
如果沒(méi)有指定過(guò)期時(shí)間則一直存在销凑,直到使用del移除
expire key seconds
例:設(shè)置鍵a1的過(guò)期時(shí)間為6秒
set a1 hhh
expire a1 6
查看有效時(shí)間,以秒為單位
ttl key
例:查看鍵a的有效時(shí)間
ttl a