亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > Redis > 正文

Redis操作命令總結

2020-03-17 12:43:25
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Redis操作命令總結,本文講解了key pattern 查詢相應的key、字符串類型的操作、鏈表操作、hashes類型及操作、集合結構操作、有序集合、服務器相關命令等內容,需要的朋友可以參考下
 

一、key pattern 查詢相應的key

  (1)redis允許模糊查詢key  有3個通配符  *、?、[]

  (2)randomkey:返回隨機key  

 ?。?)type key:返回key存儲的類型

  (4)exists key:判斷某個key是否存在

 ?。?)del key:刪除key

 ?。?)rename key newkey:改名

 ?。?)renamenx key newkey:如果newkey不存在則修改成功

 ?。?)move key 1:將key移動到1數據庫

  (9)ttl key:查詢key的生命周期(秒)

 ?。?0)expire key 整數值:設置key的生命周期以秒為單位

  (11)pexpire key 整數值:設置key的生命周期以毫秒為單位

 ?。?2)pttl key:查詢key 的生命周期(毫秒)

  (13)perisist key:把指定key設置為永久有效

二、字符串類型的操作

  (1)set key value [ex 秒數] [px 毫秒數] [nx/xx]  

      如果ex和px同時寫,則以后面的有效期為準

      nx:如果key不存在則建立

      xx:如果key存在則修改其值

  (2)get key:取值

 ?。?)mset key1 value1 key2 value2 一次設置多個值

 ?。?)mget key1 key2 :一次獲取多個值

 ?。?)setrange key offset value:把字符串的offset偏移字節改成value

                  如果偏移量 > 字符串長度,該字符自動補0x00

 ?。?)append key value :把value追加到key 的原值上

 ?。?)getrange key start stop:獲取字符串中[start, stop]范圍的值

                  對于字符串的下標,左數從0開始,右數從-1開始

                  注意:當start>length,則返回空字符串

                     當stop>=length,則截取至字符串尾

                     如果start所處位置在stop右邊,則返回空字符串

 ?。?)getset key nrevalue:獲取并返回舊值,在設置新值

  (9)incr key:自增,返回新值,如果incr一個不是int的value則返回錯誤,incr一個不存在的key,則設置key為1

 ?。?0)incrby key 2:跳2自增

  (11)incrbyfloat by 0.7: 自增浮點數 

 ?。?2)setbit key offset value:設置offset對應二進制上的值,返回該位上的舊值

                 注意:如果offset過大,則會在中間填充0

                    offset最大到多少

                     2^32-1,即可推出最大的字符串為512M

 ?。?3)bitop operation destkey key1 [key2..]    對key1 key2做opecation并將結果保存在destkey上

                          opecation可以是AND OR NOT XOR

  (14)strlen key:取指定key的value值的長度

   (15)setex key time value:設置key對應的值value,并設置有效期為time秒

三、鏈表操作

  Redis的list類型其實就是一個每個子元素都是string類型的雙向鏈表,鏈表的最大長度是2^32。list既可以用做棧,也可以用做隊列。

  list的pop操作還有阻塞版本,主要是為了避免輪詢

 ?。?)lpush key value:把值插入到鏈表頭部

  (2)rpush key value:把值插入到鏈表尾部

 ?。?)lpop key :返回并刪除鏈表頭部元素

  (4)rpop key: 返回并刪除鏈表尾部元素

 ?。?)lrange key start stop:返回鏈表中[start, stop]中的元素

  (6)lrem key count value:從鏈表中刪除value值,刪除count的絕對值個value后結束

                count > 0 從表頭刪除  count < 0 從表尾刪除  count=0 全部刪除

  (7)ltrim key start stop:剪切key對應的鏈接,切[start, stop]一段并把改制重新賦給key

  (8)lindex key index:返回index索引上的值

 ?。?)llen key:計算鏈表的元素個數

 ?。?0)linsert key after|before search value:在key 鏈表中尋找search,并在search值之前|之后插入value

  (11)rpoplpush source dest:把source 的末尾拿出,放到dest頭部,并返回單元值

    應用場景: task + bak 雙鏈表完成安全隊列

Redis操作命令總結

 業務邏輯: rpoplpush task bak

         接收返回值并做業務處理

         如果成功則rpop bak清除任務,如果不成功,下次從bak表取任務

 ?。?2)brpop,blpop key timeout:等待彈出key的尾/頭元素

                timeout為等待超時時間,如果timeout為0則一直等待下去

      應用場景:長輪詢ajax,在線聊天時能用到

四、hashes類型及操作

  Redis hash 是一個string類型的field和value的映射表,它的添加、刪除操作都是O(1)(平均)。hash特別適用于存儲對象,將一個對象存儲在hash類型中會占用更少的內存,并且可以方便的存取整個對象。

  配置: hash_max_zipmap_entries 64 #配置字段最多64個

      hash_max_zipmap_value 512 #配置value最大為512字節

 ?。?)hset myhash field value:設置myhash的field為value

  (2)hsetnx myhash field value:不存在的情況下設置myhash的field為value

 ?。?)hmset myhash field1 value1 field2 value2:同時設置多個field

 ?。?)hget myhash field:獲取指定的hash field

 ?。?)hmget myhash field1 field2:一次獲取多個field

  (6)hincrby myhash field 5:指定的hash field加上給定的值

 ?。?)hexists myhash field:測試指定的field是否存在

  (8)hlen myhash:返回hash的field數量

 ?。?)hdel myhash field:刪除指定的field

 ?。?0)hkeys myhash:返回hash所有的field

  (11)hvals myhash:返回hash所有的value

 ?。?2)hgetall myhash:獲取某個hash中全部的field及value 

五、集合結構操作

  特點:無序性、確定性、唯一性

 ?。?)sadd key value1 value2:往集合里面添加元素

  (2)smembers key:獲取集合所有的元素

 ?。?)srem key value:刪除集合某個元素

 ?。?)spop key:返回并刪除集合中1個隨機元素(可以坐抽獎,不會重復抽到某人)   

  (5)srandmember key:隨機取一個元素

 ?。?)sismember key value:判斷集合是否有某個值

 ?。?)scard key:返回集合元素的個數

  (8)smove source dest value:把source的value移動到dest集合中

 ?。?)sinter key1 key2 key3:求key1 key2 key3的交集

 ?。?0)sunion key1 key2:求key1 key2 的并集

 ?。?1)sdiff key1 key2:求key1 key2的差集

 ?。?2)sinterstore res key1 key2:求key1 key2的交集并存在res里 

六、有序集合

  概念:它是在set的基礎上增加了一個順序屬性,這一屬性在添加修改元素的時候可以指定,每次指定后,zset會自動按新的值調整順序。可以理解為有兩列的mysql表,一列存儲value,一列存儲順序,操作中key理解為zset的名字。

  和set一樣sorted,sets也是string類型元素的集合,不同的是每個元素都會關聯一個double型的score。sorted set的實現是skip list和hash table的混合體。

  當元素被添加到集合中時,一個元素到score的映射被添加到hash table中,所以給定一個元素獲取score的開銷是O(1)。另一個score到元素的映射被添加的skip list,并按照score排序,所以就可以有序地獲取集合中的元素。添加、刪除操作開銷都是O(logN)和skip list的開銷一致,redis的skip list 實現是雙向鏈表,這樣就可以逆序從尾部去元素。sorted set最經常使用方式應該就是作為索引來使用,我們可以把要排序的字段作為score存儲,對象的ID當元素存儲。

 ?。?)zadd key score1 value1:添加元素

 ?。?)zrange key start stop [withscore]:把集合排序后,返回名次[start,stop]的元素  默認是升續排列  withscores 是把score也打印出來

  (3)zrank key member:查詢member的排名(升序0名開始)

  (4)zrangebyscore key min max [withscores] limit offset N:集合(升序)排序后取score在[min, max]內的元素,并跳過offset個,取出N個

 ?。?)zrevrank key member:查詢member排名(降序 0名開始)

 ?。?)zremrangebyscore key min max:按照score來刪除元素,刪除score在[min, max]之間

  (7)zrem key value1 value2:刪除集合中的元素

 ?。?)zremrangebyrank key start end:按排名刪除元素,刪除名次在[start, end]之間的

 ?。?)zcard key:返回集合元素的個數

  (10)zcount key min max:返回[min, max]區間內元素數量

 ?。?1)zinterstore dest numkeys key1[key2..] [WEIGHTS weight1 [weight2...]] [AGGREGATE SUM|MIN|MAX]

      求key1,key2的交集,key1,key2的權值分別是weight1,weight2

      聚合方法用 sum|min|max

      聚合結果 保存子dest集合內

      注意:weights,aggregate如何理解?

          答:如果有交集,交集元素又有score,score怎么處理?aggregate num->score相加,min最小score,max最大score,另外可以通過weights設置不同的key的權重,交集時  score*weight

七、服務器相關命令

  (1)ping:測定連接是否存活

 ?。?)echo:在命令行打印一些內容

 ?。?)select:選擇數據庫

 ?。?)quit:退出連接

  (5)dbsize:返回當前數據庫中key的數目

 ?。?)info:獲取服務器的信息和統計

 ?。?)monitor:實時轉儲收到的請求

  (8)config get 配置項:獲取服務器配置的信息

     config set 配置項  值:設置配置項信息

 ?。?)flushdb:刪除當前選擇數據庫中所有的key

 ?。?0)flushall:刪除所有數據庫中的所有的key

 ?。?1)time:顯示服務器時間,時間戳(秒),微秒數

  (12)bgrewriteaof:后臺保存rdb快照

 ?。?3)bgsave:后臺保存rdb快照

 ?。?4)save:保存rdb快照

  (15)lastsave:上次保存時間

 ?。?6)shutdown [save/nosave]

      注意:如果不小心運行了flushall,立即shutdown nosave,關閉服務器,然后手工編輯aof文件,去掉文件中的flushall相關行,然后開啟服務器,就可以倒回原來是數據。如果flushall之后,系統恰好bgwriteaof了,那么aof就清空了,數據丟失。

 ?。?7)showlog:顯示慢查詢

      問:多慢才叫慢?

      答:由slowlog-log-slower-than 10000,來指定(單位為微秒)

      問:服務器存儲多少條慢查詢記錄

      答:由slowlog-max-len 128,來做限制       


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩精品欧美激情| 精品女同一区二区三区在线播放| 久久久精品久久久久| 亚洲国产古装精品网站| 亚洲黄一区二区| 日韩性生活视频| 国产一区二区三区在线观看网站| 日韩av男人的天堂| 欧美xxxx做受欧美.88| 亚洲国产日韩欧美在线动漫| 在线视频欧美日韩精品| 日本一区二区三区在线播放| 米奇精品一区二区三区在线观看| 久久综合伊人77777尤物| 91精品视频免费看| 久久久久久久一区二区| 欧美精品日韩三级| xvideos成人免费中文版| 亚洲欧洲国产精品| 国产精品高潮呻吟久久av无限| 国产精品欧美一区二区| 亚洲国产成人爱av在线播放| 欧美黑人性视频| 欧洲亚洲妇女av| 精品国产福利在线| 亚洲欧洲美洲在线综合| 55夜色66夜色国产精品视频| 亚洲91av视频| 91国内揄拍国内精品对白| 中文字幕精品视频| xxxxxxxxx欧美| 国模视频一区二区| 色老头一区二区三区在线观看| 北条麻妃一区二区三区中文字幕| 国模精品视频一区二区| 国产91ⅴ在线精品免费观看| 欧美日韩亚洲一区二区三区| 91豆花精品一区| 91久久久久久国产精品| 中文字幕视频在线免费欧美日韩综合在线看| 在线看福利67194| 久久久国产精品x99av| 久久久国产视频| 亚洲精品动漫100p| 欧美日韩激情小视频| 精品激情国产视频| 欧美日韩成人免费| 久久精品免费播放| 亚洲欧洲在线播放| 久久综合电影一区| 国产精品日韩欧美大师| 国产亚洲在线播放| 久久久久久91| 国产精品久久久久久亚洲影视| 国产精品亚洲综合天堂夜夜| 国产视频精品va久久久久久| 97精品在线视频| 日韩经典中文字幕在线观看| 国产亚洲福利一区| 68精品久久久久久欧美| 色噜噜狠狠色综合网图区| 伊人一区二区三区久久精品| 国产精自产拍久久久久久| 国产日产欧美精品| 日韩成人在线视频网站| 亚洲xxx大片| 国产精品视频永久免费播放| 国产精品99久久99久久久二8| 亚洲新声在线观看| 久久99精品国产99久久6尤物| 一区二区在线视频| 久久躁日日躁aaaaxxxx| 成人午夜在线视频一区| 久久综合伊人77777尤物| 亚洲精品视频中文字幕| 亚洲精品久久久久中文字幕二区| 一本色道久久综合亚洲精品小说| 欧美日韩国产中字| 97视频在线免费观看| www国产精品com| 在线视频日韩精品| 中文字幕国产日韩| 日韩欧美中文字幕在线播放| 最新的欧美黄色| 色综合天天狠天天透天天伊人| 狠狠色噜噜狠狠狠狠97| 精品自在线视频| 国产精品欧美亚洲777777| 欧美性高潮床叫视频| 日韩av在线看| 91在线中文字幕| 国产精品日韩av| 亚洲人成电影网| 91久久精品日日躁夜夜躁国产| 日本精品视频在线播放| 日日骚久久av| 久久亚洲综合国产精品99麻豆精品福利| 亚洲娇小xxxx欧美娇小| 26uuu亚洲国产精品| 在线看片第一页欧美| 亚洲国产精品女人久久久| 亚洲老司机av| 95av在线视频| 欧美剧在线观看| 亚洲欧洲成视频免费观看| 成人免费激情视频| 国产精品aaa| 狠狠躁夜夜躁人人躁婷婷91| 久久久国产在线视频| 亚洲激情在线观看视频免费| 亚洲一区亚洲二区亚洲三区| 日韩中文av在线| 91高清免费在线观看| 北条麻妃一区二区在线观看| 日本精品免费一区二区三区| 91av在线网站| 欧美成人黑人xx视频免费观看| 久久久久久久网站| 久久99久久久久久久噜噜| 欧美电影免费观看高清| 精品国产一区二区三区久久狼5月| 国产激情久久久| 亚洲精品免费av| 欧美激情亚洲综合一区| 92看片淫黄大片欧美看国产片| 国产精品白丝jk喷水视频一区| 欧美激情国产高清| 亚洲第一级黄色片| 成人欧美在线观看| 亚洲第一区第一页| 亚洲第五色综合网| 亚洲毛片在线观看.| 久久国产精品99国产精| 国产成人综合久久| 国产精品久久久久久av福利软件| 97在线视频国产| 亚洲性生活视频在线观看| 久久精品电影一区二区| 黄色一区二区在线| 久久国产精品视频| 色先锋资源久久综合5566| 国产极品精品在线观看| 永久免费看mv网站入口亚洲| 欧美极品少妇xxxxⅹ免费视频| 久久影视免费观看| 精品国产欧美一区二区三区成人| 一本色道久久88亚洲综合88| 亚洲a∨日韩av高清在线观看| 亚洲欧美激情精品一区二区| 欧美乱大交xxxxx另类电影| 亚洲一区亚洲二区亚洲三区| 久久精品中文字幕免费mv| 欧美激情精品久久久久久大尺度| 亚洲成人网在线| 国产香蕉精品视频一区二区三区| 亚洲www视频| 黑人巨大精品欧美一区二区免费| 久久久久久综合网天天| 欧美视频专区一二在线观看| 亚洲国产一区二区三区在线观看| 91日韩在线视频| 国产精品中文字幕久久久| 一区二区成人精品| 亚洲精选一区二区|