Redis數據庫是優秀的開源的NO-SQL數據庫,是基於內存實現的K-V模型數據庫,訪問速度特別快
Redis的數據類型:
1.String 字符串
2.List 集合
3.Set 集合 不可重複
4.Hash 集合 類似Map
5.ZSet 集合 帶有分數的Set集合
Redis常用命令:
String:字符串類型,值不僅僅可以是字符串還可以是數值 k-v
set key value [EX 秒] | [PX 毫秒] 設置
set s2 123 EX 10 設置s2 值爲123 有效期10秒
get key 獲取
setnx key value 設置 如果key存在就返回0 不存在就返回1
setex key 秒數 value 設置並標記有效期
del key [key ...] 刪除指定的key 可以一次刪除多個
mset key value [key value ...] 設置多個key和value
mget key [key ...] 獲取多個key的值
getset key value 獲取並設置key的內容
incr key 自增1
decr key 自減1
incrby key 增量值 加上指定的值
decrby key 減去的值 減去指定的值
strlen key 獲取長度
append key 追加的值 追加指定內容
setrange key 開始替換的索引 替換的值 替換指定範圍的內容
List: 基於鏈表結構實現,雙端鏈表 可以模擬常用的數據結構,元素有序且可以重複
lpush key value [value ...] 新增數據 從頭部添加 模擬棧
rpush key value [value ...] 新增數據 從尾部添加 模擬隊列
linsert key before|after 元素值 新增值 添加數據 插入
lrange key 起始索引 終止索引
llen key 獲取元素個數
lset key 索引 修改的值 修改
lrem key 要刪除的數量 刪除的值
lpop key 從前往後 移除1個元素
rpop key 從後往前 移除1個元素
lindex key 索引 獲取指定索引的值
rpoplpush 第一個集合 第二個集合 從第一個集合的底部刪除一個元素添加到第二個集合的頭部
Set:集合 無序而且值不可重複 可以實現各種交集、並集等操作
sadd key value [value ...] 新增數據
smembers key 獲取指定key的所有元素
spop key 數量 隨機返回並刪除指定數量的元素
srandmember key [數量] 隨機獲取指定數量的元素
scard key 查看指定key的元素個數
sismember key 值 校驗值是否存在 存在返回1不存在返回0
srem key value [value ...] 刪除元素,可以刪除多個
sdiff 第一個集合 第二個集合 返回第一個集合中不再第二個集合中的元素的值
sdiffstore 新集合 第一個集合 第二個集合 將第一個集合中不再第二個集合中的元素的值存儲到新集合中
sinter 第一個集合 第二個集合 獲取2個集合的交集元素
sinterstore 新集合 第一個集合 第二個集合 將2個集合的交集元素存儲到新集合中
sunion 第一個集合 第二個集合 獲取2個集合的並集元素
sunionstore 新集合 第一個集合 第二個集合 將2個集合的並集元素存儲到新集合中
smove 第一個集合 第二個集合 元素值 將第一個集合中的元素值移動到第二個集合中
ZSet:就是對set集合的補充,元素不可重複,只是多了一個double類型的分數,可以根據這個分數進行排序,分數可以重複
zadd key 分數 value 新增
zrange key 起始索引 終止索引 獲取指定索引範圍內的元素
zrangebyscore key 最小分數 最大分數 獲取指定分數範圍內的元素
zcard key 獲取集合的元素個數
zrank key 元素值 獲取元素的分數從低到高的對應索引
zrevrank key 元素值 獲取元素的分數從高到低的對應索引
zcount key 起始分數 終止分數 獲取指定範圍內的分數對應的元素個數
zincrby key 添加的分數 元素 爲元素的分數添加指定的值
zrem key 元素值 刪除指定的元素
zremrangebyscore key 起始分數 終止分數 刪除指定分數範圍內的元素
zremrangebyrank key 起始索引 終止索引 刪除指定索引範圍內的元素 分數從低到高
Hash: 常用的,類似JAVA中Map集合,擁有鍵值對信息,適合存儲對象
hset key field value 設置內容
hset stu1 id 1
hget key field 獲取指定集合中字段的值
hget stu1 id
hmset key field value [ field value ...] 批量新增內容
hmget key field [ field ...] 批量獲取內容
hsetnx key field value 新增內容 如果字段不存在就返回1 存在就返回0
hincrby key field 增量值 在指定的字段值上添加指定的值
hlen key 獲取指定集合的元素個數
hkeys key 獲取指定集合的所有的字段
hvals key 獲取指定集合的所有的值
hgetall key 獲取指定集合的所有的字段和值
hdel key field [field ...] 刪除指定集合中的指定字段的元素
hexists key field 驗證指定集合中釋放存在字段 存在就返回1 不存在返回0
系統命令:
keys 匹配規則 允許使用* 查看當前數據庫中,存在的所有的鍵
info 查看Redis的配置信息
select 數據庫的索引 切換數據庫 Redis默認有16個數據庫 從0-15 默認連接都是0庫
exists key 驗證是否存在某個鍵 存在返回1 不存在返回0
expire key 秒數 設置指定key的有效期 單位秒
ttl key 查看指定key的剩餘有效期 單位秒
del key 刪除指定的key
persist key 取消有效期 變爲永久有效
rename 原來的key 新key 重命名
randomkey 隨機返回一個key
move key db索引 移動key到指定的數據庫中
flushdb 清空當前的數據庫
flushall 清空所有數據庫
config get 配置屬性名稱 獲取指定配置文件中指定名稱的值
config set 配置屬性名稱 值 設置指定配置文件中指定名稱的值
auth 密碼 密碼認證 有密碼的話必須進行認證,否則無法操作
現將Redis常用命令總結如上,大家可以參考學習,如有錯誤請各位大牛指出。謝謝各位閱讀。