redis學習筆記

來源:互聯網
上載者:User

標籤:

基本安裝和用法:http://www.tuicool.com/articles/QzMRNb

redis訪問方式:./src/redis-cli -h [host] -p [port] 或者直接./src/redis-server redis.conf

reis基本用法-database:雖然redis是按照key-value進行儲存,但redis引入了“databse”概念:

  • reids安裝key-value的方式儲存資料,每個key都屬於一個databses;
  • 預設是redis開啟了16個database,編號為0~15;
  • 通過redis-cli登入redis後,預設的是第0個databases;

切換databases用>select [DB INDEX] 如:select 12

查看redis各個databases的keys統計資訊:>info keyspace

redis基本用法:

Strings:set QQ tecent; 

      get qq;

     exists qq;

integer:

     incr tresss;

     incr 將 key 中儲存的數字值增一,如果 key 不存在,那麼 key 的值會先被初始化為 0 ,然後再執行 INCR 操作。如果值包含錯誤的類型,或字串類型的值不能表示為數字,那麼返回一個錯誤。

     desr trees;

lists:

     rpush mylist item1;

     rpush 將一個或多個值 value 插入到列表 key 的表尾(最右邊)。如果有多個 value 值,那麼各個 value 值按從左至右的順序依次插入到表尾:比如對一個空列表 mylist 執行 RPUSH mylist a b c ,得出的結果清單為 a b c ,等同於執行命令 RPUSH mylist a 、 RPUSH mylist b 、 RPUSH mylist c 。如果 key 不存在,一個空列表會被建立並執行 RPUSH 操作。

     lpush mylist item3;將一個或多個值 value 插入到列表 key 的表頭

     lrange mylist 0 -1;返回列表 key 中指定區間內的元素,區間以位移量 start 和 stop 指定。

下標(index)參數 start 和 stop 都以 0 為底,也就是說,以 0 表示列表的第一個元素,以 1 表示列表的第二個元素,以此類推。你也可以使用負數下標,以 -1 表示列表的最後一個元素, -2 表示列表的倒數第二個元素,以此類推。

     lpop mylist;移除並返回列表 key 的頭元素

     rpop mylist;

hash:

      hset myhash key value1;

      hset myhash key values2;

      

     hget myhash key2;==>"value2";

     hgetall myhash;==>"key1" "value1" "key2" "value2"

     hvals myhash;==>"values1" "value2";

     hkeys myhash;==>"key1" "key2"

sets:

     sadd myset sky;

     sadd myset moon;

     

    sismember myset sky;判斷 sky 元素是否集合 myst 的成員。是怎返回1 不是則返回0;

    smembers myset;==>"key" "moon".返回集合 key 中的所有成員。

    sinter myset myset2;求交集:求myset 和myset2的共同元素;

    sdiff myset myset2;求差集:myset-myset2;

    sunion myset myset2;求並集:myset U myset2;

sorted sets:

     zadd z1 1 mon;

   zadd z1 2 tur;

   zadd z1 3 wen;

    

   zscore z1 tur==>"2"

   zcard z1==>"3

   zrange z1遞增排序

   zrevrange z1 0 2==>"wen" "tur" "mon"

   ZREVRANGE key start stop [WITHSCORES], 返回有序集 key 中,指定區間內的成員。其中成員的位置按 score 值遞減(從大到小)來排列。具有相同 score 值的成員按字典序的逆序(reverse lexicographical order)排列。除了成員按 score 值遞減的次序排列這一點外, ZREVRANGE 命令的其他方面和 ZRANGE 命令一樣。

pub/sub:

     Puber>publish ch1 "helloworld"==>2將資訊 message 發送到指定的頻道 channel。傳回值為接收到資訊 message 的訂閱者數量。

     

    subscribe ch1 

    SUBSCRIBE channel [channel ...]訂閱給定的一個或多個頻道的資訊。傳回值如下:

    

redis管理:

    auth :AUTH password==>通過設定設定檔中 requirepass 項的值(使用命令 CONFIG SET requirepass password ),可以使用密碼來保護 Redis 伺服器。如果開啟了密碼保護的話,在每次串連 Redis 伺服器之後,就要使用 AUTH 命令解鎖,解鎖之後才能使用其他 Redis 命令。如果 AUTH 命令給定的密碼 password 和設定檔中的密碼相符的話,伺服器會返回 OK 並開始接受命令輸入。

    

    ping :PING==>使用用戶端向 Redis 伺服器發送一個 PING ,如果伺服器運作正常的話,會返回一個 PONG 。

    select [number]:切換到指定索引的資料庫;

    quit:退出當前的串連;

    dbsize:統計當前database的keys的數量;

    info memory==>INFO [section]擷取當前伺服器的狀態和統計。

    section包括:Server/Client/memory/Persistence/Stats/Replication/CPU/keyspace;

     save==>SAVE 命令執行一個同步儲存操作,將當前 Redis 執行個體的所有資料快照(snapshot)以 RDB 檔案的形式儲存到硬碟,一般來說,在生產環境很少執行 SAVE 操作,因為它會阻塞所有用戶端,儲存資料庫的任務通常由 BGSAVE 命令非同步地執行。然而,如果負責儲存資料的後檯子進程不幸出現問題時, SAVE 可以作為儲存資料的最後手段來使用。

    bgsave==>在後台非同步(Asynchronously)儲存當前資料庫的資料到磁碟,BGSAVE 命令執行之後立即返回 OK ,然後 Redis fork 出一個新子進程,原來的 Redis 進程(父進程)繼續處理用戶端請求,而子進程則負責將資料儲存到磁碟,然後退出。

    flushdb==>清空當前資料庫中的所有 key。

    flushall==>清空整個 Redis 伺服器的資料(刪除所有資料庫的所有 key )。此命令從不失敗。

    monitor==>監聽所有redis伺服器接收到的請求,即時列印出 Redis 伺服器接收到的命令,調試用。

    shutdown==>SHUTDOWN 命令執行以下操作:

    • 停止所有用戶端
    • 如果有至少一個儲存點在等待,執行 SAVE 命令
    • 如果 AOF 選項被開啟,更新 AOF 檔案
    • 關閉 redis 伺服器(server)

     SLAVEOF host port==>SLAVEOF 命令用於在 Redis 運行時動態地修改複製(replication)功能的行為。

     通過執行 SLAVEOF host port 命令,可以將當前伺服器轉變為指定伺服器的從屬伺服器(slave server)。

     如果當前伺服器已經是某個主伺服器(master server)的從屬伺服器,那麼執行 SLAVEOF host port 將使當前伺服器停止對舊主伺服器的同步,丟棄舊資料集,轉而開始對新主伺服器進行同步。

     另外,對一個從屬伺服器執行命令 SLAVEOF NO ONE 將使得這個從屬伺服器關閉複製功能,並從從屬伺服器轉變回主伺服器,原來同步所得的資料集不會被丟棄。

     HELP==>如:help asdd

     

 

redis學習筆記

聯繫我們

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