乙個開源,用鍵值對的儲存方式,查詢快
redis會把資料儲存在「記憶體裡」裡,使用磁碟進行持久化
資料型別豐富:
hash:用於儲存物件(雜湊表)
list:列表的元素為string;按照順序插入頭或者尾
set:無序集合,型別也是string,唯一性,不重複
zset:有序集合,string,唯一性,有權重,每個元素都會加乙個score表示權重
reids可以將資料複製到任意從機中
原子性:客戶端可以併發訪問 也是單執行緒
他可以快取訊息佇列,網頁儲存的資訊
安裝windows:
linux:
sudo apt install redis-server
預設埠號:6379
進入資料庫select 0 #預設0,這裡資料庫可以用數字表示,作為編號,
#一般redis不接受自定義資料庫名,他預設有16個
#由於不接收資料庫名,所以那些庫存了哪些資料就需要自己記住了
select + 編號可以直接進入某個資料編號庫
所有資料型別都可以的命令keys * #顯示所有的鍵值
這個就顯示所有的鍵值,不區分資料型別,例如string就輸出鍵,list就輸了列表名,set就輸出集合名
del key #刪除某個鍵
#也適合於所有的資料型別,對於list,push,set等他們的表名,集合名就是他們的鍵(key)
設定鍵值、插入設定鍵值,也可認為是插入,有就是列表插入或者鍵值更新,沒有就是建立在插入
以下key表示鍵,value表示值,表示內容可以選
time表示時間單位秒,listname表示列名,tablename表示表名,setname無序集合名,其他就是關鍵字:
string:set key value
mset key value [key value....] #設定多個
setex key time(s) value或者set key value ex time
hash:hset tabelname key value
hmset table key value [key value ...] #插入多條
list:頭部插入lpush listname value [value ...] 這裡例如 lpush list1 1 2 3 ,然後你檢視資料的時候會顯示3,2,1,從頭部乙個乙個插入,後插入的在前
尾部插入rpush listname value [value ...] 這裡怎麼插入怎麼排
指定元素插入:linsert listname before|after 某個值 value
修改指定值:lset listname index value
set:sadd setname value [value ...]
zset:zadd zaddname score value [score value ....] #score表示權重根據這個排序
查詢string:get keyname
mget keyname1 keyname2 .... #獲取多個鍵的值
模糊查詢: keys patter #可用*(任意字元),?(單個字元),(裡面的乙個)
存在與否:exists keyname #存在1 不存在0
檢視有效時間,ttl keyname
檢視鍵值型別:type keyname
獲取長度:strlen keyname
hash:hget tablename key 查詢單個值
hmget table key1 key2 ... #查詢多個值
獲取所有屬性:hkeys tablename
獲取所有值:hvals tablename
獲取所有屬性和值 hgetall tablename
獲取鍵值對個數 :hlen tablename
判斷存在與否:hexists tablename key 存在返回1
list:lrange listname start end #獲取指定範圍的元素,可以為負數
裁剪並修改原陣列:ltrim listname start end
獲取長度:llen listname
根據所有獲取對應的值:lindex listname index
set:獲取所有元素:smembers setname
獲取長度:scard listname
判斷元素是否存在:sismember listname value
zset:獲取指定範圍的元素:zrange zsetname start end
獲取元素個數:zcard zsetnaem
查詢權重範圍內的元素個數:zcount zsetname minscore maxscore
查詢指定元素的權重:zscore zsetname value
刪除元素string:del keyname #因為字串裡只有乙個元素所以刪全部就可以了
hash: hdel tablename key #刪除某個屬性和值,刪除全全部del就就可以了
list:lpop listname #刪除第乙個,並且作為返回值返回
rpop listname #刪除第乙個,並且作為返回值返回
set:srem setname value #刪除這個元素
zset:zrem zsetname value #刪除這個元素
運算string:對於數字型別資料可進行如下操作:
incr key #鍵所對於的值加一
decr ke #鍵所對於的值減一
incrby key num #鍵所對於的值加num數值
decrby key num #鍵所對於的值減num數值
#就算數純數字也是追加 如18 追加 "5" 變為"185" 但是它任然可以進行incr decr運算
set:交集:sinter setname1 [setname2 ...]
差集:sdiff setname1 [setname2 ...]
合集:sunion setname1 [setname2 ...]
zset:zrem zsetname value #刪除這個元素
redis資料庫安裝
一 redis安裝步驟 root localhost mkdir p opt redis cluster reddis 6379 root localhost mkdir p opt redis cluster reddis 6379 root localhost mkdir p data redi...
NoSQL資料庫Redis的安裝及使用
redis是乙個開源的使用ansi c語言編寫 支援網路 可基於記憶體亦可持久化的日誌型 key value資料庫,並提供多種語言的api,它提供了多樣化的資料結構,諸如strings 字串 hashes 雜湊 lists 列表 sets 集合 sorted sets 有續集合 今天來講一下它的安裝...
Redis 資料庫安裝及使用方法
開啟乙個 cmd 視窗 使用cd命令切換目錄到 c redis 執行 redis server.exe redis.windows.conf 如果想方便的話,可以把 redis 的路徑加到系統的環境變數裡,這樣就省得再輸路徑了,後面的那個 redis.windows.conf 可以省略,如果省略,會...