企业实战_03_Redis基础命令
接上一篇:企業實戰_02_Redis基礎
https://blog.csdn.net/weixin_40816738/article/details/99204244
先啟動redis服務端,在啟動redis客戶端
| info | 查看系統信息 |
| ping | 測試連通性 |
| dbsize | key數量 |
| keys * | 查看所有的key |
| select 1 | 切換到鍵空間(keyspace1) 默認redis的鍵空間有16個(0-15) |
| set a b | 儲存數據 key=a value=b |
| quit/exit | 退出 |
鍵命令
exists key 存在返回1 不存在返回0
TTL key
以秒為單位,返回給定 key 的剩余生存時間(TTL, time to live)
返回為-1,說明這個key沒有過期時間
ttl key:不存在的key,返回-2,持久化無過期時間的key,返回-1,you
expire key 10:給這個key設置的過期時間為10秒,可以通過ttl命令進行查看
type key :返回的值value的類型
set一個hash值:
hset hash name gblfy
key為hash 字段為name value為gblfy
type hash:返回值類型就是hash
randomkey:隨機key,key有可能是hash key,也有可能是string key
rename命令:key重命名
小試牛刀:
設置3個key分別為a、b、c,值分別為a、b、c set a a set b b set c c場景1:
給key=a重命名為d(不存在的key)
rename a d
執行命令后,現在的3個key分別為d、b、c,值分別為a、b、c
注:只修改key,value未重新設置
執行set d d后
現在的3個key分別為d、b、c,值分別為d、b、c
注:將key=d的value覆蓋了
場景2:
給key=d重命名為c(存在的key)
rename d c
執行命令后,現在的2個key分別為b、c,值分別為b、d
renamenx 有校驗,給已存在的key,重命名為已存在的key不生效,給存在的key,重命名為不存在的key生效
String字符串:
設置key=c value=c 過期時間為100秒 setex設置過期時間簡寫形式
setex c 100 c
get key 存在返回value值,不存在,返回null
小試牛刀
set word wordgblfy
執行getrange word 0 2返回wor
注:0 2 閉合區間,包含首尾
執行getset a aa命令后,返回這個key的未修改之前的value值,普通的set a aa,返回時OK
mset 設置一個或多個key
mset a1 a b1 b c1 c d1 d
mget a1 b1 c1 d1獲取多個key的value值
strlen 獲取長度
strlen key
msetnx 批量設置key value 給存在的key設置不會生效,給不存在的key設置會生效
redis命令中,后綴帶有nx,組怒新事物的原子性,同時成功或只有有一個不成功,則都不成功
incr相應增加
decr相應減少
incrby 指定key相應增加
decrby指定key相應減少
set 1 1
此時,key=1 value=1
incr 1
incr 1
incr 1
此時,key=1 value=3
前提條件是integer類型
append 1 append ,給指定的key的value后面添加字符串
redis數據結構hash
hset map name value
hset 1
hget 1
設置key=map
hset map name value
判斷返回值類型
type map 是hash
判斷map中name是否存在
hexists map name,存在返回1,不存在返回0
hget map name ,存在返回value,不存在返回null
獲取key和value
hgetall map
獲取key和value
hkeys map
獲取value
hvals map
下一篇:企業實戰04_redis-cluster集群搭建https://blog.csdn.net/weixin_40816738/article/details/100635263
總結
以上是生活随笔為你收集整理的企业实战_03_Redis基础命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Cause: java.lang.Ill
- 下一篇: MySQL启动出现The server