redis windows下使用及redis命令

來源:互聯網
上載者:User
http://www.cnblogs.com/chenping-987123/archive/2012/01/29/2331079.html
Redis 是一個開源,進階的索引值對的儲存。它經常作為服務端的資料結構,它的鍵的資料類型能夠是strings, hashs, lists, sets(無序集合) 和 sorted sets(有序集合).

如果我們要在windows下使用redis作為學習之用,可以去https://github.com/dmajkic/redis/downloads 下載最新的windows下的redis,最新的版本目前是2.4.5

現在完成以後可以解壓,有2個檔案夾,分別對應的是32位的windows, 64位的windows。

筆者的電腦是32位的win7 專業版,所以開啟32的那個檔案夾,可以看看一些config, exe檔案,雙擊 redis-server.exe運行。可以看到一些資訊:

連接埠號碼:6379;使用了redis.conf設定檔;redis的版本號碼:2.4.5;還有就是用戶端的串連數。

此時,可以雙擊 redis-cli.exe 運行一個用戶端,運行後可以看到redis 127.0.0.1:6379

此時可以通過一個命令來展示redis的功能。redis的命令如下:

串連控制

QUIT 關閉串連

AUTH (僅限啟用時)簡單的密碼驗證

適合全體類型的命令

EXISTS key 判斷一個鍵是否存在;存在返回 1;否則返回0;

DEL key 刪除某個key,或是一系列key;DEL key1 key2 key3 key4

TYPE key 返回某個key元素的資料類型 ( none:不存在,string:字元,list,set,zset,hash)

KEYS pattern 返回匹配的key列表 (KEYS foo*:尋找foo開頭的keys)

RANDOMKEY 隨機獲得一個已經存在的key,如果當前資料庫為空白,則返回Null 字元串

RENAME oldname newname更改key的名字,新鍵如果存在將被覆蓋

RENAMENX oldname newname 更改key的名字,如果名字存在則更改失敗

DBSIZE返回當前資料庫的key的總數

EXPIRE設定某個key的到期時間(秒),(EXPIRE bruce 1000:設定bruce這個key1000秒後系統自動刪除)注意:如果在還沒有到期的時候,對值進行了改變,那麼那個值會被清除。

TTL尋找某個key還有多長時間到期,返回時間秒

SELECT index 選擇資料庫

MOVE key dbindex 將指定鍵從當前資料庫移到目標資料庫 dbindex。成功返回 1;否則返回0(來源資料庫不存在key或目標資料庫已存在同名key);

FLUSHDB 清空當前資料庫中的所有鍵

FLUSHALL 清空所有資料庫中的所有鍵

處理字串的命令

SET key value 給一個鍵設定字串值。SET keyname datalength data (SET bruce 10 paitoubing:儲存key為burce,字串長度為10的一個字串paitoubing到資料庫),data最大不可超過1G。

GET key擷取某個key 的value值。如key不存在,則返回字串“nil”;如key的值不為字串類型,則返回一個錯誤。

GETSET key value可以理解成獲得的key的值然後SET這個值,更加方便的操作 (SET bruce 10 paitoubing,這個時候需要修改bruce變成1234567890並擷取這個以前的資料paitoubing,GETSET bruce 10 1234567890)

MGET key1 key2 … keyN 一次性返回多個鍵的值

SETNX key value SETNX與SET的區別是SET可以建立與更新key的value,而SETNX是如果key不存在,則建立key與value資料

MSET key1 value1 key2 value2 … keyN valueN 在一次原子操作下一次性設定多個鍵和值

MSETNX key1 value1 key2 value2 … keyN valueN 在一次原子操作下一次性設定多個鍵和值(目標鍵不存在情況下,如果有一個以上的key已存在,則失敗)

INCR key 自增索引值

INCRBY key integer 令索引值自增指定數值

DECR key 自減索引值

DECRBY key integer 令索引值自減指定數值

處理 lists 的命令

RPUSH key value 從 List 尾部添加一個元素(如序列不存在,則先建立,如已存在同名Key而非序列,則返回錯誤)

LPUSH key value 從 List 頭部添加一個元素

LLEN key 返回一個 List 的長度

LRANGE key start end從自定的範圍內返回序列的元素 (LRANGE testlist 0 2;返回序列testlist前0 1 2元素)

LTRIM key start end修剪某個範圍之外的資料 (LTRIM testlist 0 2;保留0 1 2元素,其餘的刪除)

LINDEX key index返回某個位置的序列值(LINDEX testlist 0;返回序列testlist位置為0的元素)

LSET key index value更新某個位置元素的值

LREM key count value 從 List 的頭部(count正數)或尾部(count負數)刪除一定數量(count)匹配value的元素,返回刪除的元素數量。

LPOP key 彈出 List 的第一個元素

RPOP key 彈出 List 的最後一個元素

RPOPLPUSH srckey dstkey 彈出 _srckey_ 中最後一個元素並將其壓入 _dstkey_頭部,key不存在或序列為空白則返回“nil”

處理集合(sets)的命令(有索引無序序列)

SADD key member增加元素到SETS序列,如果元素(membe)不存在則添加成功 1,否則失敗 0;(SADD testlist 3 \n one)

SREM key member 刪除SETS序列的某個元素,如果元素不存在則失敗0,否則成功 1(SREM testlist 3 \N one)

SPOP key 從集合中隨機彈出一個成員

SMOVE srckey dstkey member 把一個SETS序列的某個元素 移動到 另外一個SETS序列 (SMOVE testlist test 3\n two;從序列testlist移動元素two到 test中,testlist中將不存在two元素)

SCARD key 統計某個SETS的序列的元素數量

SISMEMBER key member 獲知指定成員是否存在於集合中

SINTER key1 key2 … keyN 返回 key1, key2, …, keyN 中的交集

SINTERSTORE dstkey key1 key2 … keyN 將 key1, key2, …, keyN 中的交集存入 dstkey

SUNION key1 key2 … keyN 返回 key1, key2, …, keyN 的並集

SUNIONSTORE dstkey key1 key2 … keyN 將 key1, key2, …, keyN 的並集存入 dstkey

SDIFF key1 key2 … keyN 依據 key2, …, keyN 求 key1 的差集。官方例子:

key1 = x,a,b,c

key2 = c

key3 = a,d

SDIFF key1,key2,key3 => x,b

SDIFFSTORE dstkey key1 key2 … keyN 依據 key2, …, keyN 求 key1 的差集並存入 dstkey

SMEMBERS key 返回某個序列的所有元素

SRANDMEMBER key 隨機返回某個序列的元素

處理有序集合(sorted sets)的命令 (zsets)

ZADD key score member 添加指定成員到有序集合中,如果目標存在則更新score(分值,排序用)

ZREM key member 從有序集合刪除指定成員

ZINCRBY key increment member 如果成員存在則將其增加_increment_,否則將設定一個score為_increment_的成員

ZRANGE key start end 返回升序排序後的指定範圍的成員

ZREVRANGE key start end 返回降序排序後的指定範圍的成員

ZRANGEBYSCORE key min max 返回所有符合score >= min和score <= max的成員 ZCARD key 返回有序集合的元素數量 ZSCORE key element 返回指定成員的SCORE值 ZREMRANGEBYSCORE key min max 刪除符合 score >= min 和 score <= max 條件的所有成員

排序(List, Set, Sorted Set)

SORT key BY pattern LIMIT start end GET pattern ASC|DESC ALPHA 按照指定模式排序集合或List

SORT mylist

預設升序 ASC

SORT mylist DESC

SORT mylist LIMIT 0 10

從序號0開始,取10條

SORT mylist LIMIT 0 10 ALPHA DESC

按首字元排序

SORT mylist BY weight_*

SORT mylist BY weight_* GET object_*

SORT mylist BY weight_* GET object_* GET #

SORT mylist BY weight_* STORE resultkey

將返回的結果存放於resultkey序列(List)

持久控制

SAVE 同步儲存資料到磁碟

BGSAVE 非同步儲存資料到磁碟

LASTSAVE 返回上次成功儲存到磁碟的Unix時間戳記

SHUTDOWN 同步儲存到伺服器並關閉 Redis 伺服器(SAVE+QUIT)

BGREWRITEAOF 當記錄檔過長時重寫記錄檔

遠端控制命令

INFO 提供伺服器的資訊和統計資訊

MONITOR 即時輸出所有收到的請求

SLAVEOF 修改複製選項 

 

命令都是大寫,其實小寫也是可以的。

最簡單的例子:
set ok ok

get ok 

具體的命令大家可以一個一個試試。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.