啟動或關閉redis
.
/redis-server
/etc/redis
.conf
./redis-cli
>shutdown
redis的多資料庫特性
乙個redis例項可以提供16個資料庫,他們的下表從0-15;預設使用的是0號資料庫
select 1 //選擇1號資料庫
move key1 2 //將當前資料庫中的key1移動到2號資料庫
keys通用操作
keys * //查詢所有的key
keys aa? //查詢所有已aa開頭的key
del key1 key2 //刪除key1 key2
exists *** //檢視值為***的key是否存在
rename key1 key2 //將鍵key1重新命名為key2
expire key1 300 //給key1設定過期時間為300秒
ttl key1 //查詢key1離過期還有多長時間
type key1 //獲取key1是什麼型別
string型別:
set str1 "this is string"
get str1
getset str1 kkkk //先獲取str1的值在設定
del str1
incr num //將 key 中儲存的數字值增一。如果 key 不存在,key 的值先被初始化為 0 ,然後再執行 incr 操作。型別不對報錯
decr num // 與incr相反
incrby num 5 //將key值+5
decrby num 5 //將key值-5
注意:乙個鍵最大能儲存 512mb
redis hash 是乙個鍵值(key=>value)對集合,hash 特別適合用於儲存物件。
hset hash1 key1 "value1"
hmset hash1 key2 "value2" key3 "value3"
hget hash1 key3
hmget hash1 key1 key2 key3
hgetall hash1 //獲取所有屬性名和屬性值
hdel hash1 key1 key2 //刪除 key 中的乙個或多個指定字段
del hash1 //刪除整個key
hincrby hash1 num1 5 //將key中某個數字字段增加5
hexists hash1 *** //判斷key中是否存在某屬性
hgetall hash1 //獲取所有屬性以及屬性值
hlen hash1 //獲取key的屬性數
hkeys hash1 //獲取key的所有屬性名字
hvals hash1 //獲取key的所有屬性值
redis 列表是簡單的字串列表,按照插入順序排序。你可以新增乙個元素到列表的頭部(左邊)或者尾部(右邊)。
lpush list1 value1 lalue2
lpop list1 value1 //從左側彈出乙個值
rpush list1 value4 value5
rpop list1 //從右側彈出乙個值
lrange list1 0 10
llen list1 //查詢某列表總數
lpushx list1 value3 //如果list1列表存在則插入值value3; rpushx從右側插入
rem list1 2 3 //從list1列表左側開始刪除2個3
rem list1 -2 3 //衝list1列表右側開始刪除2個3
rem list1 0 3 //刪除list1中所有的3
lset list1 3 *** //修改list1索引為3的值為***
linsert list1 before b 11 //在第乙個b元素前插入11
linsert list1 after b 11 //在第乙個b元素之後插入11
rpoplpush list1 list2 //彈出list1右側的乙個元素放入list2的左側
lrange 返回列表中指定區間內的元素,區間以偏移量 start 和 end 指定。 其中 0 表示列表的第乙個元素, 以 -1 表示列表的最後乙個元素。
redis 的 set 是 string 型別的無序集合。集合成員是唯一的
sadd set1 value1 value2 value3 //新增
smembers set1 //查詢
srem set1 value1 value2 //刪除兩個值
sismember set1 a //判斷集合set1中是否存在a這個值
sdiff set1 set2 //返回兩個集合的差集
sinter set1 set2 //返回兩個集合的交集
sunion set1 set2 //返回兩個集合的並集
smembers set1 //獲取集合所有成員
scard set1 //獲取集合成員數
srandmember set1 //隨機返回集合的乙個元素
sdiffstore set3 set1 set2 //將set1和set2的差集存入set3
sinterstore set3 set1 set2 //將set1和set2的交集存入set3
sunionstore set3 set1 set2 //將set1和set2的並集存入set3
redis zset 和 set 一樣也是string型別元素的集合,且不允許重複的成員。
不同的是每個元素都會關聯乙個double型別的分數。redis正是通過分數來為集合中的成員進行從小到大的排序。
zset的成員是唯一的,但分數(score)卻可以重複。
zadd zset1 70 zs 80 lisi //張三70分,李四80分
zscore zset1 zs //獲取張三的分數
zcard zset1 //獲取zset1中的元素數
zrem zset1 zs li //刪除張三,李四
zrange zset1 0 -1 //查詢所有元素名
zrange zset1 0 -1 withscores //查詢元素名以及分數
zrevrange zset1 0 -1 withscores //從大到小排序
zremrangebyrank zset1 0 4 //範圍刪除
zremrangebyscore zset1 70 90 //刪除分數在70至90的元素
zrangebyscore zset1 0 100 //查詢0到100分的元素
zrangebyscore zset1 0 100 limit 0 2 //查詢0到100分的元素,只顯示前兩條
zincrby zset1 3 li //給李四分數加3
zcount zset1 80 90 //查詢分數在80至90分的元素
redis事務
multi(開始乙個事務) exec(相當於提交事務) discard(相當於回滾事務)
redis兩種持久化
rdb方式:預設的方式,每隔一段時間將資料儲存一次
aof方式:以日誌的方式記錄伺服器每一操作。redis啟動的時候會讀取這些檔案來構建資料庫
兩種方式可以一起使用
aof方式:aof每秒同步,每修改同步,不同步
redis常用命令筆記
redis常用命令 並將該元素新增到名稱為dstkey的list的頭部 7 set sadd key,member 向名稱為key的set中新增元素member srem key,member 刪除名稱為key的set中的元素member spop key 隨機返回並刪除名稱為key的set中乙個元...
redis常用命令 redis筆記一(常用命令)
作為讀寫效能出眾的k v型別資料庫 redis幾乎在現在所有的專案中都會使用。常常用它來共享session,快取資料,或者是用它來實現乙個簡單的鎖。昨天簡單記錄了一下redis的單機版安裝。之後再考慮學習一下reids集群的搭建。今天再寫點簡單的,算是乙個筆記。redis作為key value的非關...
Redis筆記之常用命令
keys用來獲取符合指定規則的鍵,keys的語法規則如下 keys比如最簡單的全等匹配,下面這個命令只會匹配鍵值完全等於foo的 127.0.0.1 6379 keys foo 1 foo 可以使用萬用字元 來匹配所有的鍵,下面這條命令可以用來檢視所有的key 127.0.0.1 6379 keys...