redis基礎篇 redis的基本命令

2021-10-10 11:37:28 字數 3623 閱讀 7076

redis-cli -p 5566 -a password:登入

redis-cli -a password shutdown :關閉redis

./redis_init_script stop :關閉redis

auth pwd :輸入密碼

redis-cli -a password ping :檢視是否存活

select index:切換資料庫,總共預設16個

flushdb:刪除當前下邊db中的資料

flushall:刪除所有db中的資料

exists key:檢查key是否存在

ksys *4:搜尋某關鍵字

keys *:檢視所有的鍵

type key:返回乙個key的型別

dbsize:檢視當前資料庫中有多少個key

rename oldkey newkey:修改鍵的名字

string: 最簡單的字串型別鍵值對快取,也是最基本的

set key value:設定乙個鍵的值

get key :獲得鍵值

del key :刪除鍵

setnx key value:如果key存在value不會覆蓋之前的值,如果key不存等同於set

expire key 30:設定key的過期時間為30秒,也可以這樣設定,set key value ex 30

ttl key:檢視key還剩餘多少時間過期,-1代表沒有過期時間。-2代表已經過期

strlen key:檢視字串key的長度

incr key:累加1

decr key:累減1

incrby key num:累加給定數值

decrby key num:累減給定數值

incrbyfloat key float:累加給定的小數

getrange key start end:擷取資料,end=-1 代表到最後

setrange key start newdata:從start位置開始替換資料

mset key1 value1 key2 value2:連續設值

mget key1 key2:連續取值

msetnx key1 value1 key2 value2:連續設定,如果存在則不設定

hash:類似map,儲存結構化資料結構,比如儲存乙個物件(不能有巢狀物件)

hset key property value:建立乙個key物件,這個物件中包含property 屬性,值為value

hget key property :獲得key 物件中property的值

hmset user age 18 phone 139123123:設定物件中的多個鍵值對

hmsetnx user age 18 phone 139123123:設定物件中的多個鍵值對,存在則不新增

hmget user age phone::獲得物件中的多個屬性

hgetall user:獲得整個物件的內容

hlen user:有多少個屬性

hkeys user:獲得所有屬性

hvals user:獲得所有值

hexists user age:判斷屬性是否存在 存在返回1,不存在返回0

hincrby user age 2:累加屬性給定數值

hincrbyfloat user age 2.2:累加屬性給定數值(小數)

hdel key property :刪除鍵對應的屬性的鍵值對

del key:刪除

list:列表,[a, b, c, d, …]

lpush userlist one two third:構建乙個list,從左邊開始存入資料

rpush userlist one two third :構建乙個list,從右邊開始存入資料

lrange userlist start end:獲得資料.end= -1代表直到最後

lpop userlist:從左側開始刪除乙個值,返回刪除的值

rpop userlist:從右側開始刪除乙個值,返回刪除的值

llen userlist:長度

lindex userlist index:獲取userlist下標為index的值

lset userlist index value:替換下標為index的值為value

linsert userlist before/after value(之前存在的值) newvalue:插入乙個新的值newvalue在value的前/後

lrem userlist num value:刪除num個值都為value的資料

ltrim userlist start end:擷取新的list,替換原來的list

del userlist :刪除

set集合是無序不可重複的

sadd set value value1:建立乙個set集合,並把value,value1新增進入集合

smembers set:檢視set集合中所有的值

scard set:檢視set集合中值的個數

sismember set value:檢視value值在不在set集合中,1表示在集合中,0表示不在

srem set value:刪除set集合中的value

spop set num:出棧(隨機)num個元素,即刪除num個元素,如果不寫num則隨機出棧乙個。返回出棧的元素。

srandmember set num :隨機在set集合中獲取num個元素

smove set1 set2 value:把set1集合中的value元素移動到set2中,set1中不在有value元素

sdiff set1 set2:集合set1和set2的差集

sinter set1 set2:集合set1和set2的交集

sunion set1 set2:集合set1和set2的並集

sorted set:排序的set,可以去重可以排序

zadd zset 10 value1 20 value2:建立乙個zset集合且設定value1和對應的分數10,value2和對應的分數20

zrange zset 0 -1:檢視所有zset中的內容,-1代表直到最後

zrange zset 0 -1 withscores:檢視所有zset中的內容,帶有分數,公升序(按分值)

zrevrange zset 0 -1 withscores:檢視所有zset中的內容,帶有分數,降序(按分值)

zrank zset value:獲得value對應的下標

zscore zset value:獲得value對應的分數

zcard zset:統計zset集合中元素的個數

zcount zset:分數1 分數2:統計zset集合中在分數1和分數2之間的元素個數,包括分數1和分數2

zrangebyscore zset 分數1 分數2:查詢分數之間的元素(包含分數1 分數2)

zrangebyscore zset (分數1 (分數2:查詢分數之間的元素(不包含分數1 和 分數2),「( 」代表不包含。

zrangebyscore zset 分數1 分數2 limit start end:查詢分數之間的元素(包含分數1 分數2),獲得的結果集再次根據下標區間做查詢重 start 開始取end個

zrem zset value:刪除zset集合中的value元素

zincrby zset 5 value:給zset中的value加5分

Redis 基礎篇(一)

今天我們來講一講快取 目前,memcache 和 redis 是網際網路分層架構中,最常用的 key value 快取。那麼如何選擇呢 下面來看一下兩種快取的比較 redis mecache 吞吐量十萬左右 qps 達到幾十萬 qps 資料結構 支援多種資料結構,如雜湊,列表,集合,有序集合這類複雜...

初探Redis 基礎篇

作為向web而生的redis,現已經使用得十分廣泛了。依靠其高效能 簡潔設計等深受開發者們喜歡。對redis從基礎學起,抱著知其然到知其所以然的想法,先學會怎麼用,再去深入了解內部運轉。redis官網 redis英文全稱為remote dictionary server,採用c語言開發的開源,基於記...

redis基礎篇 效能問題

零 一 觀察指標 1 cpu 效能監控圖 關注 user 和system的使用率 2 network 效能監控圖 出口流量1 可能存在大key或者高併發查詢 get 2 可能存在rdb快照 增量命令傳輸 新搭建的從庫或者主從切換導致 進口流量 1 代表可能存在高併發寫入 set 3 iops 效能監...