Redis學習筆記(二)-key相關命令

來源:互聯網
上載者:User

標籤:

  Redis支援的各種資料類型包括string,list ,set ,sorted set 和hash .

  Redis本質上一個key-value db,所以我們首先來看看他的key。首先key也是字串類型,但是key中不能包括邊界字元。由於key不是binary safe的字串,所以像"my key"和"mykey\n"這樣包含空格和換行的key是不允許的。順便說一下在redis內部並不限制使用binary字元,這是redis協議限制的。"\r\n"在協議格式中會作為特殊字元。

  Redis 1.2以後的協議中部分命令已經開始使用新的協議格式了(比如MSET)。總之目前還是把包含邊界字元當成非法的key吧,免得被bug糾纏。另外關於key的一個格式約定介紹下,object-type:id:field。比如user:1000:password,blog:xxidxx:title,還有key的長度最好不要太長。道理很明顯占記憶體啊,而且尋找時候相對短key也更慢。不過也不推薦過短的key,比如u:1000:pwd,這樣的。顯然沒上面的user:1000:password可讀性好。

  get 和 set 命令:

  

  key相關的命令:

  exits key 測試指定key是否存在,返回1表示存在,0不存在

  

  del key1 key2 ....keyN 刪除給定key,返回刪除key的數目,0表示給定key都不存在

  

  type key 返回給定key的value類型。返回none 表示不存在key,string字元類型,list 鏈表類型set 無序集合類型...

  

  keys pattern 返回匹配指定模式的所有key

  

  randomkey 返回從當前資料庫中隨機播放的一個key,如果當前資料庫是空的,返回空串

  

  rename oldkey newkey 原子的重新命名一個key,如果newkey存在,將會被覆蓋。如果oldkey不存在或者和newkey相同則報錯,返回錯誤資訊

      

  renamenx oldkey newkey 同上,但是如果newkey存在返回失敗

  dbsize 返回當前資料庫的key數量

  

  expire key seconds 為key指定到期時間,單位是秒。返回1成功,0表示key已經設定過到期時間或者不存在

  ttl key 返回設定過到期時間的key的剩餘到期秒數-1表示key不存在或者沒有設定過到期時間

  

  select db-index 通過索引選擇資料庫,預設串連的資料庫所有是0,預設資料庫數是16個。返回1表示成功,0失敗

  

  move key db-index 將key從當前資料庫移動到指定資料庫。返回1成功。0 如果key不存在,或者已經在指定資料庫中

  

  flushdb 刪除當前資料庫中所有key,此方法不會失敗。慎用

  flushall 刪除所有資料庫中的所有key,此方法不會失敗。更加慎用

  

Redis學習筆記(二)-key相關命令

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.