Redis--命令

  • 設(shè)值
set KEY VALUE
  • 獲值
get KEY
  • 設(shè)置過期時間(單位:s)
set KEY VALUE ex SECONDS
  • 設(shè)置過期時間(單位:s)
exprire KEY SECONDS
  • 設(shè)置過期時間(單位:ms)
pexprire KEY MILLISECONDS
  • 設(shè)置UNIX過期時間戳
exprireat KEY timestamp
  • 設(shè)置UNIX過期時間戳
pexprireat KEY MILLISECONDS-TIMESTAMP
  • 刪除過期
rersist KEY
  • 存在則不插入
set B 2 nx
  • 存在則修改
set B 2 xx
  • 批插入
mset A 1 B 2 C 3
  • 批插入(原子操作)
msetnx D 7 E 3
  • 獲取所有鍵keys *

  • 設(shè)置新值并返回舊值

getset A 2
  • 將值VALUE插入到字符串鍵key已存儲內(nèi)容的末尾(字符串拼接)
append KEY VALUE
  • 獲取字符串長度
strlen KEY
  • 獲取鍵值為key的字符串從index1到index2的值(index從左往右 從0開始 從右往左 從-1開始)
getrang KEY INDEX1 INDEX2

整型

incrby KEY INTNUM(整型)
  • 將key的值加INTNUM(沒有則創(chuàng)建,并將INTNUM賦給key)
decrby KEY INTNUM
  • 將KEY的值減INTNUM

  • KEY值加一

incr KEY
  • KEY值減一
decr KEY

浮點型

incrbyfloat KEY NUM(浮點型)
  • 將key的值加NUM(沒有則創(chuàng)建,并將NUM賦給key,通過傳入負值做減法)
TTL KEYPTTL KEY
  • 查看剩余生存時間

  • KEY存在,但沒有設(shè)置TTL,返回-1

  • KEY存在,還在生命周期內(nèi),返回剩余的秒

  • KEY曾經(jīng)存在,但已消亡,返回-2

  • 鍵類型

type KEY
  • 鍵是否存在
exists KEY
  • 鍵重命名
renamenx KEY NEWKEY
  • 刪除鍵
del KEY
  • 設(shè)置鍵為key的二進制的OFFset(從右往左)位值為VALUE
setbit KEY OFFSET VALUE
  • 獲取鍵為key在OFFset位上的值(從右往左)最低位開始正數(shù)符號位為1負數(shù)為0getbit KEY OFFSET

  • 返回key在指定區(qū)間第一次出現(xiàn)的位置

bitpos KEY BIT [START][END]
  • 獲取key二進制位數(shù)
bitcount KEY
  • 二進制位操作
bitop OPERATION KEY [KEY ...]
  • 清除當前庫數(shù)據(jù)flushdbflushall

  • 清除所有庫中的數(shù)據(jù)

  • List列表(Linked List實現(xiàn)元素為字符串)b ul LEFTr RIGHTx EXIST

  • 從左壓入元素

lpush KEY VALUE
  • 從左壓入元素
lrushx KEY VALUE
  • 從右壓入元素
rpush KEY VALUE
  • 從右壓入元素
rpushx KEY VALUE
  • 從左彈出元素
lpop KEY
  • 從右彈出元素
rpop KEY
  • 從source尾部彈出元素,壓入destination頭部
rpoplpush SOURCE DESTINATION
  • 返回指定范圍元素
lrange KEY START STOP
  • 獲取指定位置的元素
lindex KEY INDEX
  • 設(shè)置指定位置元素的值
lset KEY INDEX VALUE
  • 元素列表長度(元素個數(shù))
llen KEYLREM KEY COUNT VALUEcount>0:從表頭開始遍歷移除count個值為VALUE的元素count<0:從表尾開始遍歷移除count絕對值個值為VALUE的元素count=0:移除所有值為VALUE的元素
  • 移除從start到stop以外的元素
ltrim KEY START STOP
  • 在pivot(key中已有元素)之前(BEFORE)或之后(AFTER)插入元素VALUE
linsert KEY BEFORE|AFTER PIVOT VALUE
  • 從列表頭部阻塞彈出元素
blpop KEY timeout
  • 從列表尾部阻塞彈出元素
brpop KEY TIMEOUT
  • 從一個列表尾部阻塞彈出元素壓入另一個列表的頭部
brpoplpush SOURCE DESTINATION TIMEOUThash散列
  • 設(shè)置單個字段(鍵,字段,值)
hset KEY FIELD VALUE
  • KEY的field不存在時才執(zhí)行
hsetnx KEY FIELD VALUE
  • 設(shè)置多個字段
hmset KEY FIELD VALUE [FIELD VALUE ...]
  • 返回字段個數(shù)hlen KEY

  • 判斷字段是否存在(key或field不存在返回0)

hexists KEY FIELD
  • 返回字段值
hget KEY FIELD
  • 返回多個字段值
hmget KEY FIELD [FIELD...]
  • 獲取所有鍵值對
hgetall KEY
  • 獲取所有鍵
hkeys KEY
  • 獲取所有值
hvals KEY
  • 給KEY的FIELD字段加INCREMENT(整型)
hincrby KEY FIELD INCREMENT
  • 給key的field字段加increment(浮點型)
hincrbyfloat KEY field increment
  • 刪除key的field字段
hdel KEY field [field...]

Set集合

  • 無序的,去重的

  • 元素字符串類型

sadd KEY member [member...]
  • 增加一個或多個元素(如果元素已存在,自動忽略)
srem KEY member [memver...]
  • 移除一個或多個元素(如果元素不存在,自動忽略)
smembers KEY
  • 返回集合所有元素(元素過多會產(chǎn)生阻塞)
sismember KEY member
  • 檢查元素是否存在
SRANDMEMBER KEY count
  • 隨機返回集合中count個元素(默認為1)
  • count大于集合基數(shù),返回所有元素

  • count>0返回可重復出現(xiàn)的count絕對值個

SCARD KEY
  • 返回集合元素個數(shù)(不需要遍歷)
SPOP KEY
  • 隨機移除并返回被移除的元素
smovl SOURCE DESTINATION MEMBER
  • 移除source中的member到destination
sdiff KEY [key...]
  • 從第一個key中去除其他集合和自己的交集部分
sdiffstore DESTINATION KEY [KEY...]
  • 將差集結(jié)果存到destination中
sinter KEY [KEY...]
  • 取所有集合交集部分sinter
store destination KEY [key...]
  • 將交集結(jié)果存到destination中
sunion KEY [KEY...]
  • 取所有集合并集部分
sunionstore DESTINATION KEY [KEY...]
  • 將并集結(jié)果存到DESTINATION中SortedSet集合有序的,去重的元素字符串類型每個元素都關(guān)聯(lián)一個浮點數(shù)分值(score),并按照分值從大到小順序排列集合中的元素(分值可以相同)

  • 增加一個或多個元素(如果元素已存在,則使用新的score)

zadd KEY SCORE MEMBER [SCORE MEMBER...]
  • 移除一個或多個元素(元素不存在,自動忽略)
zrem KEY MEMBER [MEMBER...]
  • 顯示分值
zscore KEY MEMBER
  • 增加或減少(increment為負數(shù))分值
zincrby KEY INCREMENT MEMBER
  • 返回元素排名(索引從0開始)
zrank KEY MEMBER
  • 返回指定區(qū)間元素
zrange KEY START STOP [WITHSCORES]

如果score相同,則按照字典序lexicographical order排序

默認按照score從小到大,如果需要score從大到小排列,使用ZREVRANGE

  • 返回指定分值區(qū)間元素
zrangebyscore KEY MIN MAX [WITHSCORES] [LIMIT OFFSET COUNT]

返回score默認屬于[min,max]之間,元素按照score升序排序,score相同字典序LIMIT中OFFset代表跳過多少個元素,count代表返回個數(shù)使用小括號,修改區(qū)間為開區(qū)間-inf和+inf表示負無窮和正無窮

  • 刪除指定排名范圍元素
zremrangebyrank KEY START STOP
  • 返回集合中元素個數(shù)
zcard KEY
  • 返回指定范圍元素(分值)
zcount KEY MIN MAX
  • 并集
zunionstore DESTINATION NUMKEYS KEY [KEY ...] [weights WEIGHT] [aggregate sum|min|max]

NUMKEYS指定key的數(shù)量,必須WEIGHTS權(quán)重,key中每一個score都要乘以權(quán)重

AGGREGATE指定并集結(jié)果的聚集方式

SUM:將所有集合中某一元素的score值之和作為結(jié)果集中該成員的score值MIN:將所有集合中某一元素的score值中最小值作為結(jié)果集中該成員的score值

MAX:將所有集合中某一元素的score值中最大值作為結(jié)果集中該成員的score值

  • RDB持久化(全量備份)
  • RDB文件(二進制)

  • 定時更新(消耗大,不完全安全)

save M N
  • 距離上次創(chuàng)建RDB文件已過m秒,且所有數(shù)據(jù)庫總共已發(fā)生不少于n次的修改,則執(zhí)行BGSAVE
bgsave
  • 執(zhí)行時不會阻塞進程(fork子進程,效率稍低)

  • AOF持久化(增量備份)

  • 使用數(shù)據(jù)庫日志來保存每一條命令appendfsync always

服務器沒寫入一個命令,調(diào)用一次fdatasyncappend

  • fsync everysec服務器每秒調(diào)用一次

  • fdatasync appendfsync no服務器不主動調(diào)用

  • fdatasync always速度慢
    ererysec 默認值
    AOF文件冗余時,AOF文件過大,需要AOF重寫,以減小AOF文件
    客戶端向服務器發(fā)送BGREWRITEAOF命令通過設(shè)置配置選項來讓服務器自動執(zhí)行BGREWRITEAOF命令:
    auto-aof-rewrite-min-size,觸發(fā)AOF重寫所需的最小體積,只要AOF文件的體積大于等于size時.
    服務器才會考慮是否進行AOF重寫

  • 主從復制Master:只能寫

Slave:只能讀

  • redis-server

--slaveof(啟動)配置當前服務為slave

  • SLAVEOF host port (命令行)將當前服務器狀態(tài)從master修改為其它服務器的slave

  • redis-server config.conf(配置文件)

config.conf文件內(nèi)容:

slaveof master-ip master-portslave-portMaster出現(xiàn)故障時Slave使用SLAVEOF no one命令成為Master,其它Slave使用slaveof命令指向新的Master(手動)

  • Redis哨兵Sentinel

配置文件Sentinel monitor

監(jiān)視名為name的主服務器,當quorum個Sentinel判斷主服務器下線時,Sentinel才會同意故障轉(zhuǎn)移

Sentinel默認端口號為26379

Redis Twemproxy(分片)

Redis集群最大節(jié)點個數(shù) 16384

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末岩睁,一起剝皮案震驚了整個濱河市乙嘀,隨后出現(xiàn)的幾起案子抄瑟,更是在濱河造成了極大的恐慌,老刑警劉巖羊苟,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件祭阀,死亡現(xiàn)場離奇詭異傻工,居然都是意外死亡,警方通過查閱死者的電腦和手機咙冗,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門沾歪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人雾消,你說我怎么就攤上這事灾搏。” “怎么了立润?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵狂窑,是天一觀的道長。 經(jīng)常有香客問我桑腮,道長蕾域,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮旨巷,結(jié)果婚禮上巨缘,老公的妹妹穿的比我還像新娘。我一直安慰自己采呐,他們只是感情好若锁,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著斧吐,像睡著了一般又固。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上煤率,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天仰冠,我揣著相機與錄音,去河邊找鬼蝶糯。 笑死洋只,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的昼捍。 我是一名探鬼主播识虚,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼妒茬!你這毒婦竟也來了担锤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤乍钻,失蹤者是張志新(化名)和其女友劉穎肛循,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體银择,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡多糠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了欢摄。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片熬丧。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖怀挠,靈堂內(nèi)的尸體忽然破棺而出析蝴,到底是詐尸還是另有隱情,我是刑警寧澤绿淋,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布闷畸,位于F島的核電站,受9級特大地震影響吞滞,放射性物質(zhì)發(fā)生泄漏佑菩。R本人自食惡果不足惜盾沫,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望殿漠。 院中可真熱鬧赴精,春花似錦、人聲如沸绞幌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽莲蜘。三九已至谭确,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間票渠,已是汗流浹背逐哈。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留问顷,地道東北人昂秃。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像择诈,于是被迫代替她去往敵國和親械蹋。 傳聞我的和親對象是個殘疾皇子出皇,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Redis命令運行于redis服務器上羞芍,要在服務器上運行命令需要一個redis客戶端,在安裝Redis安裝包時郊艘,我...
    第八共同體閱讀 226評論 0 0
  • set:設(shè)置key對應的值為string類型的value set name lijie setnx 設(shè)置key對應...
    烈焰焚燒閱讀 285評論 0 1
  • 轉(zhuǎn)載(https://www.cnblogs.com/it-cen/p/4297273.html) 一荷科、查詢相應的...
    JavaHub閱讀 151評論 0 0
  • 概述 Redis的鍵值可以使用物種數(shù)據(jù)類型:字符串,散列表纱注,列表畏浆,集合,有序集合狞贱。本文詳細介紹這五種數(shù)據(jù)類型的使用...
    fang63625閱讀 687評論 0 51
  • 在第9集中Carrie的例假過期了一個多星期便监,這個場景基本所有女性都有體驗過扎谎。會接著一天10次去衛(wèi)生間看是不是大姨...
    瑪麗姐閱讀 358評論 0 0