Redis入門

安裝

  • 解壓:

 tar -zxvf redis.tar.gz
  • 安裝:

進(jìn)入redis目錄

make && make install

可在/usr/local/bin/目錄中查看,bin目錄中可以在任何地方運(yùn)行。


image.png

運(yùn)行:

  • 直接運(yùn)行

redis-server
image.png
  • 后臺(tái)運(yùn)行

在 redis.conf 文件中修改:daemonize yes

redis-service /路徑/redis.conf

redis啟動(dòng)關(guān)閉等命令

  • 后臺(tái)啟動(dòng)redis:

redis-service /路徑/redis.conf
  • 進(jìn)入redis客戶端:

redis-cli
或者
redis-cli -h 127.0.0.1 -p 6379
redis-cli --raw    #可以解決中文亂碼

測(cè)試客戶端是否連接,并關(guān)閉redis


image.png
  • 關(guān)閉redis:

127.0.0.1:6379> shutdown
或者
redis-cli shutdown

redis基本指令

keys *      #查詢當(dāng)前庫(kù)的所有鍵
exists <key>    #判斷某個(gè)鍵是否存在
type <key>    #查看鍵的類型
del <key>    #刪除某個(gè)鍵

expire <key> <seconds>    #為鍵值設(shè)置過期時(shí)間,單位秒
ttl <key>    #查看還有多少秒過期,-1表示不過期,-2表示已過期

dbsize    # 查看當(dāng)前數(shù)據(jù)庫(kù)的key的數(shù)量
Flushdb    #清空當(dāng)前庫(kù)
Flushall    #清空所有庫(kù)

String指令

get <key>    #查詢對(duì)應(yīng)鍵值
set <key> <value>    #添加鍵值對(duì)
append <key> <value>    #將給定的<value>追加到原值的末尾
strlen <key>    #獲得值的長(zhǎng)度
setnx <key> <value>    #只有在key不存在時(shí)設(shè)置key的值

incr <key>    #將key中存儲(chǔ)的數(shù)字值加1,只對(duì)數(shù)字值操作,如果為空,新增值為1
decr <key>    #將key中存儲(chǔ)的數(shù)字值減1,只對(duì)數(shù)字值操作,如果為空,新增值為-1
incrby/decrby <key> <步長(zhǎng)>    #將key中存儲(chǔ)的數(shù)字值增減,自定義步長(zhǎng)

mset <key1>  <value1> <key2> <value2>...    #同時(shí)設(shè)置一個(gè)或者多個(gè)key-value對(duì)
mget <key1> <key2>...      #同時(shí)獲取一個(gè)或者多個(gè)value
msetnx  <key1>  <value1> <key2> <value2>...    #同時(shí)設(shè)置一個(gè)或者多個(gè)key-value對(duì),當(dāng)且僅當(dāng)所有給定key都不存在

getrange <key> <起始位置> <結(jié)束位置>    #獲取值的范圍,類似java中的substring
setrange <key> <起始位置> <value>    #用<value>覆蓋<key>所存儲(chǔ)的字符串值,從<起始位置>開始

setex <key> <過期時(shí)間> <value>    #設(shè)置鍵值的同時(shí),設(shè)置過期時(shí)間,單位為秒
getset <key> <value>    #設(shè)置新值的同時(shí)獲得舊值

List指令

lpush/rpush <key> <value1> <value2>...    #從左邊/右邊插入一個(gè)或多個(gè)值
lpop/rpop <key>    #從左邊/右邊吐出一個(gè)值,值在鍵在,值光鍵亡
rpoplpush <key1> <key2>    #從<key1>列表右邊吐出一個(gè)值,插到<key2>列表左邊

lrange <key> <start> <stop>    #按照索引下標(biāo)獲得元素(從左到右)
lindex <key> <index>    #按照索引下標(biāo)獲得元素(從左到右)
llen <key>    #獲得列表長(zhǎng)度

linsert <key> after <value> <NEWvalue>    #在<value>的后面插入<newvalue>插入值
lrem <key> <n> <value>    #從左邊刪除n個(gè)value(從左到右)

Set指令

sadd <key> <value1> <value2>...    #將一個(gè)或多個(gè)member元素加入到集合key當(dāng)中,已經(jīng)存在于集合的member元素將被忽略
smemebers <key>    #取出該集合的所有值
sismember <key> <value>    #判斷集合<key>是否為含有該<value>值,有返回1,沒有返回0
scard <key>    #返回該集合的元素個(gè)數(shù)
srem <key> <value1> <value2>...    #刪除集合中的某個(gè)元素
spop <key>    #隨機(jī)從該集合中吐出一個(gè)值
srandmember <key> <n>    #隨機(jī)從該集合中取出n個(gè)值,不會(huì)從集合中刪除

sinter <key1> <key2>    #返回兩個(gè)集合的交集元素
sunion <key1> <key2>    #返回兩個(gè)集合的并集元素
sdiff <key1> <key2>    #返回兩個(gè)集合的差集元素

Hash指令

hset <key> <field> <value>    #給<key>集合中的<field>鍵賦值<value>
hget <key1> <field>    #從<key1>集合<field>取出value
hmset <key1> <field1> <value1> <field2> <value2>...    #批量設(shè)置hash的值

hexists key <field>    #查看哈希表key中,給定域field是否存在
hkeys <key>    #列出該hash集合的所有field
hvals <key>    #列出該hash集合的所有value
hincrby <key> <field> <increment>    #為哈希表key中的域field的值增加increment,減少為-increment
hsetnx <key> <field> <value>    #將哈希表key中的域field的值設(shè)置為value,當(dāng)且僅當(dāng)域field不存在

zset指令

zadd <key> <score1> <value1> <score2> <value2>...    #將一個(gè)或多個(gè)memeber元素及其score值加入到有序集key當(dāng)中
zrange <key> <start> <stop> [WITHSCORES]    #返回有序集key中,下標(biāo)在<start> <stop>之間的元素,帶WITHSCORES,可以讓分?jǐn)?shù)一起和值返回到結(jié)果集。
zrangebyscore key min max [WITHSCORES] [limit offset count]    #返回有序集key中,所有score值介于min和max之間(包括等于min或max)的成員。有序集成員按score值遞增(從小到大)次序排列
zrevrangebyscore key max min [withscores] [limit offset count]    #同上,改為從大到小排序

zincrby <key> <increment> <value>    #為元素的score加上增量
zrem <key> <value>    #刪除該集合下,指定的元素
zcount <key> <min> <max>    #統(tǒng)計(jì)該集合,分?jǐn)?shù)區(qū)間內(nèi)的元素個(gè)數(shù)
zrank <key> <value>    #返回該值在集合中的排名,從0開始
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容