工具-Redis-使用(99.6.2)

@python

1.啓動

redis-server

交互git

redis-cli

2.數據結構

在這裏插入圖片描述

  • string類型
    字符串類型是Redis中最爲基礎的數據存儲類型,它在Redis中是二進制安全的,這便意味着該類型能夠接受任何格式的數據,如JPEG圖像數據或Json對象描述信息等。在Redis中字符串類型的Value最多能夠容納的數據長度是512M。
  • hash類型
    hash⽤於存儲對象,對象的結構爲屬性、值
    值的類型爲string
  • list類型
    列表的元素類型爲string
    按照插⼊順序排序
  • set類型
    ⽆序集合
    元素爲string類型
    元素具備惟⼀性,不重複
    說明:對於集合沒有修改操做
  • zset類型
    sorted set,有序集合
    元素爲string類型
    元素具備惟⼀性,不重複
    每一個元素都會關聯⼀個double類型的score,表示權重,經過權重將元素從⼩到⼤排序
    說明:沒有修改操做github

    3.String命令

  • 設置鍵值
set key value
#例1:設置鍵爲name值爲itcast的數據
set name itcast
  • 設置鍵值及過時時間,以秒爲單位
setex key seconds value
#例2:設置鍵爲aa值爲aa過時時間爲3秒的數據
setex aa 3 aa
  • 設置多個鍵值
mset key1 value1 key2 value2 ...
#例3:設置鍵爲'a1'值爲'python'、鍵爲'a2'值爲'java'、鍵爲'a3'值爲'c'
mset a1 python a2 java a3 c
  • 追加值
append key value
#例4:向鍵爲a1中追加值' haha'
append 'a1' 'haha'
  • 獲取:根據鍵獲取值,若是不存在此鍵則返回nil
get key
例5:獲取鍵'name'的值
get 'name'
  • 根據多個鍵獲取多個值
mget key1 key2 ...
#例6:獲取鍵a一、a二、a3'的值
mget a1 a2 a3

4.其餘經常使用命令

  • 查找鍵,參數⽀持正則表達式
keys pattern
#例1:查看全部鍵
keys *
#例2:查看名稱中包含a的鍵
keys 'a*'
  • 判斷鍵是否存在,若是存在返回1,不存在返回0
exists key1
#例3:判斷鍵a1是否存在
exists a1
  • 查看鍵對應的value的類型
type key
#例4:查看鍵a1的值類型,爲redis⽀持的五種類型中的⼀種
type a1
  • 刪除鍵及對應的值
del key1 key2 ...
#例5:刪除鍵a二、a3
del a2 a3
  • 設置過時時間,以秒爲單位,若是沒有指定過時時間則⼀直存在,直到使⽤DEL移除
expire key seconds
#例6:設置鍵'a1'的過時時間爲3秒
expire 'a1' 3
  • 查看有效時間,以秒爲單位
ttl key
#例7:查看鍵'bb'的有效時間
ttl bb

5.Hash命令

  • hash設置單個屬性
hset key field value
#例1:設置鍵 user的屬性name爲itheima
hset user name itheima

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被配置爲保存數據庫快照,但它目前不能持久化到硬盤。用來修改集合數據的命令不能用
緣由:
強制關閉Redis快照致使不能持久化。 解決方案:
運行config set stop-writes-on-bgsave-error no 命令後,關閉配置項stop-writes-on-bgsave-error解決該問題。正則表達式

  • hash設置多個屬性
hmset key field1 value1 field2 value2 ...
#例2:設置鍵u2的屬性name爲itcast、屬性age爲11
hmset u2 name itcast age 11
  • hash獲取指定鍵全部的屬性
hkeys key
#例3:獲取鍵u2的全部屬性
hkeys u2
  • hash獲取⼀個屬性的值
hget key field
#例4:獲取鍵u2屬性'name'的值
hget u2 'name'
  • hash獲取多個屬性的值
hmget key field1 field2 ...
#例5:獲取鍵u2屬性'name'、'age的值
hmget u2 name age
  • hash獲取全部屬性的值
hvals key
#例6:獲取鍵'u2'全部屬性的值
hvals u2
  • 刪除整個hash鍵及值,使⽤del命令,刪除屬性,屬性對應的值會被⼀起刪除
hdel key field1 field2 ...
#例7:刪除鍵'u2'的屬性'age'
hdel u2 age

6.List命令

  • list在左側插⼊數據
lpush key value1 value2 ...
#例1:從鍵爲'a1'的列表左側加⼊數據a 、 b 、c
lpush a1 a b c
  • list在右側插⼊數據
rpush key value1 value2 ...
#例2:從鍵爲'a1'的列表右側加⼊數據0 1
rpush a1 0 1
  • list在指定元素的前或後插⼊新元素
linsert key before或after 現有元素 新元素
#例3:在鍵爲'a1'的列表中元素'b'前加⼊'3'
linsert a1 before b 3
  • list返回列表⾥指定範圍內的元素redis

    start、stop爲元素的下標索引
    索引從左側開始,第⼀個元素爲0
    索引能夠是負數,表示從尾部開始計數,如-1表示最後⼀個元素數據庫

lrange key start stop
#例4:獲取鍵爲'a1'的列表全部元素
lrange a1 0 -1
  • list設置指定索引位置的元素值安全

    索引從左側開始,第⼀個元素爲0
    索引能夠是負數,表示尾部開始計數,如-1表示最後⼀個元素數據結構

lset key index value
#例5:修改鍵爲'a1'的列表中下標爲1的元素值爲'z'
lset a 1 z
  • list刪除指定元素app

    將列表中前count次出現的值爲value的元素移除
    count > 0: 從頭往尾移除
    count < 0: 從尾往頭移除
    count = 0: 移除全部

lrem key count value
#例6.1:向列表'a2'中加⼊元素'a'、'b'、'a'、'b'、'a'、'b'
lpush a2 a b a b a b
列表
例6.2:從'a2'列表右側開始刪除2個'b'
lrem a2 -2 b

7.Set命令

  • set添加元素
sadd key member1 member2 ...
#例1:向鍵'a3'的集合中添加元素'zhangsan'、'lisi'、'wangwu'
sadd a3 zhangsan sili wangwu
  • set返回全部的元素
smembers key
#例2:獲取鍵'a3'的集合中全部元素
smembers a3
  • set刪除
srem key
例3:刪除鍵'a3'的集合中元素'wangwu'
srem a3 wangwu

8.Zset命令

  • zset添加
zadd key score1 member1 score2 member2 ...
#例1:向鍵'a4'的集合中添加元素'lisi'、'wangwu'、'zhaoliu'、'zhangsan',權重分別爲四、五、六、3
zadd a4 4 lisi 5 wangwu 6 zhaoliu 3 zhangsan
  • zset返回指定範圍內的元素

    start、stop爲元素的下標索引
    索引從左側開始,第⼀個元素爲0
    索引能夠是負數,表示從尾部開始計數,如-1表示最後⼀個元素

zrange key start stop
#例2:獲取鍵'a4'的集合中全部元素
zrange a4 0 -1
  • zset返回score值在min和max之間的成員
zrangebyscore key min max
#例3:獲取鍵'a4'的集合中權限值在5和6之間的成員
zrangebyscore a4 5 6
  • zset返回成員member的score值
zscore key member
#例4:獲取鍵'a4'的集合中元素'zhangsan'的權重
zscore a4 zhangsan
  • zset刪除指定元素
zrem key member1 member2 ...
#例5:刪除集合'a4'中元素'zhangsan'
zrem a4 zhangsan
  • zset刪除權重在指定範圍的元素
zremrangebyscore key min max
#例6:刪除集合'a4'中權限在五、6之間的元素
zremrangebyscore a4 5 6

關於做者

我的博客網站
我的GitHub地址
我的公衆號:
在這裏插入圖片描述

相關文章
相關標籤/搜索