您好,登錄后才能下訂單哦!
redis是key-value的數(shù)據(jù)結(jié)構(gòu),每條數(shù)據(jù)都是?個(gè)鍵值對(duì)
鍵的類型是字符串
注意:鍵不能重復(fù)
值的類型分為五種:
字符串string
哈希hash
列表list
集合set
有序集合zset
保存
修改
獲取
刪除
點(diǎn)擊中?官?查看命令?檔http://redis.cn/commands.html
MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.
Redis被配置為保存數(shù)據(jù)庫快照,但它目前不能持久化到硬盤。用來修改集合數(shù)據(jù)的命令不能用
原因:
強(qiáng)制關(guān)閉Redis快照導(dǎo)致不能持久化。 解決方案:
運(yùn)行config set stop-writes-on-bgsave-error no 命令后,關(guān)閉配置項(xiàng)stop-writes-on-bgsave-error解決該問題。
查找鍵,參數(shù)?持正則表達(dá)式
keys pattern
例1:查看所有鍵
keys *
例2:查看名稱中包含a的鍵
keys 'a*'
判斷鍵是否存在,如果存在返回1,不存在返回0
exists key1
例3:判斷鍵a1是否存在
exists a1
查看鍵對(duì)應(yīng)的value的類型
type key
例4:查看鍵a1的值類型,為redis?持的五種類型中的?種
type a1
刪除鍵及對(duì)應(yīng)的值
del key1 key2 ...
例5:刪除鍵a2、a3
del a2 a3
設(shè)置過期時(shí)間,以秒為單位
如果沒有指定過期時(shí)間則?直存在,直到使?DEL移除
expire key seconds
例6:設(shè)置鍵'a1'的過期時(shí)間為3秒
expire 'a1' 3
查看有效時(shí)間,以秒為單位
ttl key
例7:查看鍵'bb'的有效時(shí)間
ttl bb
字符串類型是 Redis 中最為基礎(chǔ)的數(shù)據(jù)存儲(chǔ)類型,它在 Redis 中是二進(jìn)制安全的,這便意味著該類型可以接受任何格式的數(shù)據(jù),如JPEG圖像數(shù)據(jù)或Json對(duì)象描述信息等。在Redis中字符串類型的Value最多可以容納的數(shù)據(jù)長(zhǎng)度是512M。
如果設(shè)置的鍵不存在則為添加,如果設(shè)置的鍵已經(jīng)存在則修改
設(shè)置鍵值
set key value
例1:設(shè)置鍵為name值為itcast的數(shù)據(jù)
set name itcast
設(shè)置鍵值及過期時(shí)間,以秒為單位
setex key seconds value
例2:設(shè)置鍵為aa值為aa過期時(shí)間為3秒的數(shù)據(jù)
setex aa 3 aa
設(shè)置多個(gè)鍵值
mset key1 value1 key2 value2 ...
例3:設(shè)置鍵為'a1'值為'python'、鍵為'a2'值為'java'、鍵為'a3'值為'c'
mset a1 python a2 java a3 c
追加值
append key value
例4:向鍵為a1中追加值' haha'
append 'a1' 'haha'
獲?。焊鶕?jù)鍵獲取值,如果不存在此鍵則返回nil
get key
例5:獲取鍵'name'的值
get 'name'
根據(jù)多個(gè)鍵獲取多個(gè)值
mget key1 key2 ...
例6:獲取鍵a1、a2、a3'的值
mget a1 a2 a3
刪除鍵時(shí)會(huì)將值刪除
hash?于存儲(chǔ)對(duì)象,對(duì)象的結(jié)構(gòu)為屬性、值
值的類型為string
設(shè)置單個(gè)屬性
hset key field value
例1:設(shè)置鍵 user的屬性name為libai
hset user name libai
設(shè)置多個(gè)屬性
hmset key field1 value1 field2 value2 ...
例2:設(shè)置鍵u2的屬性name為itcast、屬性age為11
hmset u2 name laowang age 11
獲取指定鍵所有的屬性
hkeys key
例3:獲取鍵u2的所有屬性
hkeys u2
獲取?個(gè)屬性的值
hget key field
例4:獲取鍵u2屬性'name'的值
hget u2 'name'
獲取多個(gè)屬性的值
hmget key field1 field2 ...
例5:獲取鍵u2屬性'name'、'age的值
hmget u2 name age
獲取所有屬性的值
hvals key
例6:獲取鍵'u2'所有屬性的值
hvals u2
列表的元素類型為string
按照插?順序排序
在左側(cè)插?數(shù)據(jù)
lpush key value1 value2 ...
例1:從鍵為'a1'的列表左側(cè)加?數(shù)據(jù)a 、 b 、c
lpush a1 a b c
在右側(cè)插?數(shù)據(jù)
rpush key value1 value2 ...
例2:從鍵為'a1'的列表右側(cè)加?數(shù)據(jù)0 1
rpush a1 0 1
在指定元素的前或后插?新元素
linsert key before或after 現(xiàn)有元素 新元素
例3:在鍵為'a1'的列表中元素'b'前加?'3'
linsert a1 before b 3
返回列表?指定范圍內(nèi)的元素
lrange key start stop
start、stop為元素的下標(biāo)索引
索引從左側(cè)開始,第?個(gè)元素為0
索引可以是負(fù)數(shù),表示從尾部開始計(jì)數(shù),如-1表示最后?個(gè)元素
例4:獲取鍵為'a1'的列表所有元素
lrange a1 0 -1
索引從左側(cè)開始,第?個(gè)元素為0
索引可以是負(fù)數(shù),表示尾部開始計(jì)數(shù),如-1表示最后?個(gè)元素
lset key index value
例5:修改鍵為'a1'的列表中下標(biāo)為1的元素值為'z'
lset a 1 z
刪除指定元素
lrem key count value
將列表中前count次出現(xiàn)的值為value的元素移除
count > 0: 從頭往尾移除
count < 0: 從尾往頭移除
count = 0: 移除所有
例6.1:向列表'a2'中加?元素'a'、'b'、'a'、'b'、'a'、'b'
lpush a2 a b a b a b
例6.2:從'a2'列表右側(cè)開始刪除2個(gè)'b'
lrem a2 -2 b
例6.3:查看列表'py12'的所有元素
lrange a2 0 -1
?序集合
元素為string類型
元素具有唯?性,不重復(fù)
說明:對(duì)于集合沒有修改操作
添加元素
sadd key member1 member2 ...
例1:向鍵'a3'的集合中添加元素'zhangsan'、'lisi'、'wangwu'
sadd a3 zhangsan sili wangwu
返回所有的元素
smembers key
例2:獲取鍵'a3'的集合中所有元素
smembers a3
刪除指定元素
srem key
例3:刪除鍵'a3'的集合中元素'wangwu'
srem a3 wangwu
sorted set,有序集合
元素為string類型
元素具有唯?性,不重復(fù)
每個(gè)元素都會(huì)關(guān)聯(lián)?個(gè)double類型的score,表示權(quán)重,通過權(quán)重將元素從?到?排序
說明:沒有修改操作
添加
zadd key score1 member1 score2 member2 ...
例1:向鍵'a4'的集合中添加元素'lisi'、'wangwu'、'zhaoliu'、'zhangsan',權(quán)重分別為4、5、6、3
zadd a4 4 lisi 5 wangwu 6 zhaoliu 3 zhangsan
返回指定范圍內(nèi)的元素
start、stop為元素的下標(biāo)索引
索引從左側(cè)開始,第?個(gè)元素為0
索引可以是負(fù)數(shù),表示從尾部開始計(jì)數(shù),如-1表示最后?個(gè)元素
zrange key start stop
例2:獲取鍵'a4'的集合中所有元素
zrange a4 0 -1
返回score值在min和max之間的成員
zrangebyscore key min max
例3:獲取鍵'a4'的集合中權(quán)限值在5和6之間的成員
zrangebyscore a4 5 6
返回成員member的score值
zscore key member
例4:獲取鍵'a4'的集合中元素'zhangsan'的權(quán)重
zscore a4 zhangsan
刪除指定元素
zrem key member1 member2 ...
例5:刪除集合'a4'中元素'zhangsan'
zrem a4 zhangsan
刪除權(quán)重在指定范圍的元素
zremrangebyscore key min max
例6:刪除集合'a4'中權(quán)限在5、6之間的元素
zremrangebyscore a4 5 6
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。