Redis的基本使用

簡介

Redis是由意大利人開發的一款內存高速緩存數據庫,是一個高性能的鍵值對(key- value)存儲數據庫
Redis全稱爲: Remote Dictionary Server(遠程數據服務),使用C語言編寫,並之內存做爲數據存儲介質,因此讀寫數據的效率極高

redis

特性

Redis支持數據的持久化,能夠將內存中的數據保存在磁盤中,重啓的時候能夠再次加載進行使用
Redis不單單支持簡單的key-value類型的數據,同時還把value分爲list,set,zset,hash等數據結構存儲
由於Redis交換數據快,因此在服務器中經常使用來存儲一些須要頻繁調取的數據,提升效率

數據庫

數據結構

redis是key-value的數據結構,每條數據都是一個鍵值對

鍵的類型是字符串,注意:鍵不能重複

值的類型分爲五種

  • String ------> 字符串
  • List ------> 列表
  • Hash ------> 哈希
  • set ------> 集合
  • Zset ------> 有序集合

基本使用

鏈接redis:redis-cli

退出:exit

操做服務端:sudo service redis start/stop/restart

切換數據庫:select n

  • 數據庫沒有名稱,默認有16個,經過0-15來標識,鏈接redis默認選擇第一個數據庫

五大數據類型使用

全局key操做

  • 對redis的五個數據類型都適用的命令
  • 查看全部的key:keys *
  • 查看key的類型:type key
  • 更名:rename key new_key
  • 刪除鍵值對:del key [key2 key3 ...]
    • exists key 查看key是否存在
  • 設置過時時間:expire key seconds
    • persist key 刪除過時時間
    • ttl key 查看時間
      • -1:沒設置過時時間
      • -2:不存在這個鍵


String類型

  • string是redis最基本的類型,一個key對應一個value
  • 增長數據:set key value(若是key存在,則修改成新的value)
  • 查看數據:get key
  • 追加數據:append key value
  • 刪除數據:del key


List類型

  • List類型是一個字符串列表,能夠在列表頭部或尾部添加/刪除數據,在插入數據時,若是該鍵並不存在,Redis將爲該鍵建立一個
  • 添加數據
    • 在末尾添加(列表右邊):rpush key value1 [value2 ...]
    • 在頭部添加(列表左邊):lpush key value1 [value2 ...]
  • 查看數據
    • 下標範圍:lrange key start stop
    • 指定下標:lindex key index
  • 修改數據:lset key index value
  • 刪除數據
    • 從末尾刪除(列表右邊):rpop key
    • 從頭部刪除(列表左邊):lpop key
    • 指定值刪除:lrem key count(能夠存在多個重複的值,指定value刪除的次數) value


Hash類型

  • hash類型的值是一個鍵值對集合,如:h_test : { field1:value1, field2:value2,...}
  • 添加數據:hset key field value
  • 查看域值:hget key field
  • 查看全部的field:hkeys key
  • 查看全部的value:hvals key
  • 查看全部的鍵值對:hgetall key


Set類型

  • Set類型爲無序的字符集合,元素具備惟一性, 不重複
  • 添加數據:sadd key member1 [member2 ...]
  • 查看數據:smembers key
  • 隨機刪除:spop key
  • 指定刪除:srem key member1 [member2 ...]


Sorted Set類型

  • 每個成員都會有一個分數(score)與之關聯,成員是惟一的,可是分數(score)倒是能夠重複的,好比把一個班級的學生分紅幾組
  • 添加數據: zadd key score member [score2 member2 …]
  • 查看數據
    • 根據索引:zrange key start stop
    • 根據score:zrangebyscore key min max
  • 刪除數據
    • 根據值:zrem key member [member …]
    • 根據索引:zremrangebyrank key start stop
    • 根據score:zremrangebyscore key min max
相關文章
相關標籤/搜索