本文主要說一下redis的操作命令,即api
1.set
新增key-value
set username admin
2.get
根據key獲取資料
get username
3.strlen
根據key獲取值的長度
strlen key
4.exists
判斷key是否存在
exists name
返回1存在 0不存在
5.del
刪除redis中的key
del key
6.keys
用於查詢符合條件的key
keys * 查詢redis中全部的key
keys n?me 使用佔位符獲取資料
keys nam* 獲取nam開頭的資料
7.mset
賦值多個key-value
mset key1 value1 key2 value2 key3 value3
8.mget
獲取多個key的值
mget key1 key2
10.type
檢查某個key的型別
type key
11.select
切換redis資料庫
select 0-15 redis中共有16個資料庫
12.flushdb
清空單個資料庫
flushdb
13.flushall
清空全部資料庫
flushall
14.incr
自動加1
incr key
15.decr
自動減1
decr key
16.incrby
指定數值新增
incrby 10
17.decrby
指定數值減
decrby 10
18.expire
指定key的生效時間 單位秒
expire key 20
key20秒後失效
19.pexpire
指定key的失效時間 單位毫秒
pexpire key 2000
key 2000毫秒後失效
20.ttl
檢查key的剩餘存活時間
ttl key -2資料不存在 -1該資料永不超時
21.persist
撤銷key的失效時間
persist key
優化api
22.setnx
如果k存在則不賦值
setnx k v
23.setex
給k賦值v,並設失效時限
setex k 10 v
24.set k v setparams
setparams屬性:
private static final string xx = "xx"; 有key的時候才賦值 private static final string nx = "nx"; 沒有key時才賦值 private static final string px = "px"; 毫秒
private static final string ex = "ex"; 秒
可以用雜湊型別儲存物件和屬性值--例:user物件
1.hset
為物件新增資料
hset key field value
2.hget
獲取物件的屬性值
hget key field
3.hexists
判斷物件的屬性是否存在
hexists key field
1表示存在 0表示不存在
4.hdel
刪除hash中的屬性
hdel user field [field ...]
5.hgetall
獲取hash全部元素和值
hgetall key
6.hkyes
獲取hash中的所有字段
hkeys key
7.hlen
獲取hash中所有屬性的數量
hlen key
8.hmget
獲取hash裡面指定欄位的值
hmget key field [field ...]
9.hmset
為hash的多個字段設定值
hmset key field value [field value ...]
10.hsetnx
設定hash的乙個字段,只有當這個欄位不存在時有效
hsetnx key field value
11.hstrlen
獲取hash中指定key的值的長度
hstrlen key field
12.hvals
獲取hash的所有值
hvals user
redis中的list集合是雙端迴圈列表,分別可以從左右兩個方向插入資料.
list集合可以當做佇列使用,也可以當做棧使用
佇列:存入資料的方向和獲取資料的方向相反--先進先出
棧:存入資料的方向和獲取資料的方向相同--先進後出
1.lpush
從佇列的左邊入隊乙個或多個元素
lpush key value [value ...]
2.rpush
從佇列的右邊入隊乙個或多個元素
rpush key value [value ...]
3.lpop
從佇列的左端出隊乙個元素
lpop key
4.rpop
從佇列的右端出隊乙個元素
rpop key
5.lpushx
當佇列存在時從佇列的左側入隊乙個元素
lpushx key value
6.rpushx
當佇列存在時從佇列的右側入隊乙個元素
rpushx key value
7.lrange
從列表中獲取指定返回的元素
lrange key start stop
lrange key 0 -1 獲取全部佇列的資料
8.lrem
從存於 key 的列表裡移除前 count 次出現的值為 value 的元素。 這個 count 引數通過下面幾種方式影響這個操作:
· count > 0: 從頭往尾移除值為 value 的元素。
· count < 0: 從尾往頭移除值為 value 的元素。
· count = 0: 移除所有值為 value 的元素。
lrem list -2 「hello」 會從存於 list 的列表裡移除最後兩個出現的 「hello」。
需要注意的是,如果list裡沒有存在key就會被當作空list處理,所以當 key 不存在的時候,這個命令會返回 0。
9.lset
設定 index 位置的list元素的值為 value
lset key index value
redis中操作可以新增事務的支援.一項任務可以由多個redis命令完成,如果有乙個命令失敗導致入庫失敗時.需要實現事務回滾.
1.multi
標記乙個事務開始
127.0.0.1:6379> multi
-->ok
2.exec
執行所有multi之後發的命令
127.0.0.1:6379> exec
-->ok 寫入庫
3.discard
丟棄所有multi之後發的命令
回滾
redis快取伺服器
1 安裝 安裝sudo apt install redis server 檢視服務狀態 sudo systemctl status redis server 檢視檔案位置 sudo whereis redis server 檢視版本號 sudo redis server version 日誌 var...
配置redis快取伺服器
1.如果是配置虛擬機器的redis快取,先開啟虛擬機器,然後用xshell連線上虛擬機器對虛擬機器進行操作。用xftp連線上虛擬機器傳入檔案。2.如果是配置雲伺服器的redis快取,直接用xshell和xftp連線上虛擬機器或者雲伺服器。如果我沒有更換檔案目錄,就是跟著走就行了 第三步 解壓redi...
Django使用redis快取伺服器
2.在setting中新增快取設定 caches 3.檢視函式 from django.core.cache import cache 引入快取模組def detail request,pk if cache.has key pk print 有cach post cache.get pk prin...