Redis --遠(yuǎn)程字典服務(wù)--操作

2018-10-10

LinuxRedis安裝:

下載地址http://redis.io/download
安裝步驟:

1 把下載好的redis-3.0.0-rc2.tar.gz 放到linux /usr/local文件夾下

2 進(jìn)行解壓 tar -zxvf redis-3.0.0-rc2.tar.gz

3 進(jìn)入到redis-3.0.0目錄下,進(jìn)行編譯 make(執(zhí)行make命令時(shí),若出現(xiàn)需要安裝make模塊,則沒有C語(yǔ)言編譯器,sudo apt-get install -y gcc,安裝編譯器)

4 進(jìn)入到src下進(jìn)行安裝 make install 驗(yàn)證(ll查看src下的目錄,有redis-server 、redis-cil即可)

5 建立倆個(gè)文件夾存放redis命令和配置文件

mkdir -p /usr/local/redis/etc

mkdir -p /usr/local/redis/bin

6 把redis-3.0.0下的redis.conf 移動(dòng)到/usr/local/redis/etc下,

cp redis.conf /usr/local/redis/etc/

7 把redis-3.0.0/src里的mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-check-dump、redis-cli、redis-server
文件移動(dòng)到bin下,命令:

mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin

8 啟動(dòng)時(shí)并指定配置文件:./redis-server /usr/local/redis/etc/redis.conf(注意要使用后臺(tái)啟動(dòng),所以修改redis.conf里的 daemonize 改為yes)

9 驗(yàn)證啟動(dòng)是否成功:
ps -ef | grep redis 查看是否有redis服務(wù) 或者 查看端口:netstat -tunpl | grep 6379

進(jìn)入redis客戶端 ./redis-cli 退出客戶端quit
退出redis服務(wù):
(1)pkill redis-server 、
(2)kill 進(jìn)程號(hào)、

(3)/usr/local/redis/bin/redis-cli shutdown

一、 string字符串命令操作

(可根據(jù)命令提示操作)

1.1 set key value  # 保存一個(gè)鍵值對(duì)

image.png

1.2 get key  # 根據(jù)可以值,獲取對(duì)應(yīng)的值

image.png

1.3 mset key value [key value ...]  # 一次性存儲(chǔ)多個(gè)鍵值對(duì)

1.4 mget key [key ...]  # 獲取多個(gè)key對(duì)應(yīng)的值

2. setex key seconds value  # 儲(chǔ)存一個(gè)臨時(shí)的鍵值對(duì),單位為秒(10秒為例)


10秒失效:


image.png

3.1 incr key  # 將一個(gè)key對(duì)應(yīng)的值,加一, 僅對(duì)數(shù)據(jù)字符串有效?。?!
image.png

3.2 incrby key value  # 將一個(gè)key對(duì)應(yīng)的值,加value,僅對(duì)數(shù)據(jù)字符串有效?。?!

(value = -1, 可以進(jìn)行減法操作)

4.1 decr key  # 將一個(gè)key對(duì)應(yīng)的值,減一, 僅對(duì)數(shù)據(jù)字符串有效?。?!
image.png

4.2 decrby key value  # 將一個(gè)key對(duì)應(yīng)的值,減value,僅對(duì)數(shù)據(jù)字符串有效?。?!
image.png

5. strlen key  # 計(jì)算key對(duì)應(yīng)的值,的長(zhǎng)度
image.png

6. append key value  # 獲取key對(duì)應(yīng)的值,將value進(jìn)行字符串拼接
image.png

7. setnx key value  # 如果存在key,則無(wú)效,如果不存在,則保存該鍵值對(duì)
image.png

二、hash:是一個(gè)string類型的field和value的映射表,hash特別適合用于存儲(chǔ)對(duì)象。

u1 = User(1,  'diye',  20, 'lalala')

1. hset key filed value  # 添加一個(gè)對(duì)象(key),給對(duì)象添加屬性(field),和對(duì)應(yīng)的值(value)
image.png

1.2 hget key field  # 獲取key對(duì)應(yīng)的屬性的值
image.png

1.3 hmset key field value [field value ...]   # 為key添加多個(gè)屬性,和對(duì)應(yīng)的值
image.png

1.4 hmget key field [field ...]  # 獲取key對(duì)應(yīng)的多個(gè)屬性的值
image.png

5. hgetall key  # 獲取key對(duì)象的所有屬性和對(duì)應(yīng)的值
image.png

6. hkeys key  # 直接獲取對(duì)象的屬性,不返回屬性的值!
image.png

7. hvals key  # 直接獲取對(duì)象的值,不返回屬性!
image.png

8. hlen key  # 獲取對(duì)象的屬性的數(shù)量
image.png

9. hstrlen key field  # 獲取對(duì)象的屬性對(duì)應(yīng)的值的長(zhǎng)度
image.png

10. hexists key field  # 查看對(duì)象是否有該屬性,沒有返回0,有返回1。
image.png

11. hsetnx key field value  # 查詢對(duì)象的屬性是否存在,存在則不操作,不存在,保存!

12. hincrby key field value  # 對(duì)對(duì)象的屬性進(jìn)行加法運(yùn)算,必須是數(shù)字字符串!
image.png

(value = -1, 可進(jìn)行減法操作)

三、key操作:

  1. keys *   # 查詢當(dāng)前數(shù)據(jù)庫(kù)中所有的key的個(gè)數(shù)
    image.png
  2. exists key [key ...]  # 查詢key是否存在當(dāng)前數(shù)據(jù)庫(kù)
    image.png
  3. del key [key ...]   # 刪除key
    image.png
  4. type key   # 查看key類型
    image.png
  5. expire key seconds  # 為一個(gè)已存在的key設(shè)置有效時(shí)間
     ttl key   # 查看失效時(shí)間
      -1, 永久存在

      -2,表示失效/不存在
    image.png
  6. move key db   # 移動(dòng)key到指定數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)自動(dòng)創(chuàng)建)
    image.png
  7. select index  # 切換到指定數(shù)據(jù)庫(kù)中
    image.png
  8. info [section]   # 可查詢當(dāng)前數(shù)據(jù)庫(kù)的各種狀態(tài)
    image.png
  9. dbsize   # 返回當(dāng)前數(shù)據(jù)庫(kù)key的個(gè)數(shù)
    image.png
  10. flushdb   # 刪除當(dāng)前數(shù)據(jù)庫(kù)所有數(shù)據(jù)
    image.png

(flushall # 刪除所有數(shù)據(jù)庫(kù)的所有數(shù)據(jù)?。。。?/p>

  1. persist key   # 取消失效,永久保存(-1)
    image.png

四、list命令:list列表,有序存儲(chǔ)多個(gè)數(shù)據(jù)

1.1 lpush list1 value [value ...]  # 從列表左側(cè)依次加入value值! !

lrange key start stop  # 按下標(biāo)循環(huán)列表,輸出列表值
image.png

1.2 rpush list1 value [value ...]  # 從列表左側(cè)依次加入value值! !

image.png

2. linsert key BEFORE|AFTER pivot value   # 增加key值到指定位置
image.png

3.1 lpop key   # 刪除最左側(cè)的key值
image.png

3.2 rpop key   # 刪除最右側(cè)的key值
image.png

4.1 lindex key index    # 根據(jù)索引獲取值

4.2 ltrim key start stop   # 根據(jù)索引切割列表(刪除切割的內(nèi)容)
image.png

四、set

1. sadd key member [member ...]  # 建立集合key,并添加元素member
image.png

2. smember key  # 查詢集合中的元素
image.png

3. sismember key member  # 查詢集合是否存在該元素!,沒有返回0.
image.png

4. scard key   #查詢集合中元素的個(gè)數(shù)
image.png

5. sinter key [key ...]  # 求多個(gè)集合的交集

集合中求交集

6. sdiff key [key ...]  #求集合中左邊個(gè)集合的差集,
image.png

7. sunion key [key ...]  #求集合的并集
image.png

1. zadd key score member [score member ...]  # 建立一個(gè)有序的集合,該元素有一個(gè)權(quán)重,用于判斷位置
image.png

2. zcard key   #求有序集合中元素的個(gè)數(shù)
image.png

3. zragne key start stop   # 遍歷有序集合
image.png

4. zcount key min max   #計(jì)算有序集合中兩個(gè)權(quán)重之間的元素的個(gè)數(shù)
image.png

5. zscore key member   #返回元素在有序集合中的權(quán)重

最后編輯于
?著作權(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ù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 什么是redis? 1、Redis 緩存是基于 key - value 存儲(chǔ)的內(nèi)存緩存;2、提供list、set、...
    一只小釆鳥閱讀 2,075評(píng)論 0 2
  • Redis::__construct構(gòu)造函數(shù)$redis = new Redis(); connect, open...
    bycall閱讀 1,552評(píng)論 0 2
  • 2017.10.27 還有66天2017年就結(jié)束了。 還有49天就要離校了。 今天就拍畢業(yè)照了。 ...
    鄧枝枝閱讀 368評(píng)論 0 0
  • 今天,陽(yáng)光燦爛,我和媽媽還有哥哥一起去順峰小學(xué)的籃球場(chǎng)打籃球,我們到了的時(shí)候,幸好來(lái)到順峰小學(xué)之前,媽媽在家...
    小依涵閱讀 334評(píng)論 2 4
  • 高原古城拉薩,拉薩藏語(yǔ)是圣地,古稱臥馬塘,海拔3650米,布達(dá)拉宮建在普陀山上,是佛教圣地。值得瞻拜。 ...
    張邦祥閱讀 690評(píng)論 0 1

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