Redis總結筆記(一):安裝和常用命令

轉載於:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/112.html?1455860824

一、redis簡單介紹

redis是NoSql家族​的一員,鍵值對的內存型數據庫。但是它支持把數據保存到本地。這點比memcached好。

缺點: 沒有本地數據緩衝, 目前還沒有完整的數據聚集化支持

優點: 配置簡單, 使用方便, 高性能,支持不同的數據類型(hashes, lists, sets, sorted sets)

ASP.NET WebUI for viewing content of the cache

二、安裝

windows版本非官方版本。但是是”微軟的團隊維護的“這個是官方的說法。下載解壓運行起來服務端(如圖)

加載中...

linux版官方版本,具體安裝也很簡單

代碼如下:


$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz 
$ tar xzf redis-2.8.17.tar.gz
$ cd redis-2.8.17
$ make



三、常用命令
   
    set key value  插入鍵
  get key   獲取value
    keys *   查詢所有鍵
  del key 刪除鍵
     flushall  清空數據庫
    連接操作相關的命令#p#分頁標題#e#

    quit:關閉連接(connection)
    auth:簡單密碼認證


持久化

    save:將數據同步保存到磁盤
    bgsave:將數據異步保存到磁盤
    lastsave:返回上次成功將數據保存到磁盤的Unix時戳
    shundown:將數據同步保存到磁盤,然後關閉服務


遠程服務控制

    info:提供服務器的信息和統計
    monitor:實時轉儲收到的請求
    slaveof:改變複製策略設置
    config:在運行時配置Redis服務器


對value操作的命令

    exists(key):確認一個key是否存在
    del(key):刪除一個key
    type(key):返回值的類型
    keys(pattern):返回滿足給定pattern的所有key
    randomkey:隨機返回key空間的一個
    keyrename(oldname, newname):重命名key
    dbsize:返回當前數據庫中key的數目
    expire:設定一個key的活動時間(s)
    ttl:獲得一個key的活動時間
    select(index):按索引查詢
    move(key, dbindex):移動當前數據庫中的key到dbindex數據庫
    flushdb:刪除當前選擇數據庫中的所有key
    flushall:刪除所有數據庫中的所有key


對String操作的命令

    set(key, value):給數據庫中名稱爲key的string賦予值value
    get(key):返回數據庫中名稱爲key的string的value
    getset(key, value):給名稱爲key的string賦予上一次的value
    mget(key1, key2,…, key N):返回庫中多個string的value
    setnx(key, value):添加string,名稱爲key,值爲value
    setex(key, time, value):向庫中添加string,設定過期時間time
    mset(key N, value N):批量設置多個string的值#p#分頁標題#e#
    msetnx(key N, value N):如果所有名稱爲key i的string都不存在
    incr(key):名稱爲key的string增1操作
    incrby(key, integer):名稱爲key的string增加integer
    decr(key):名稱爲key的string減1操作
    decrby(key, integer):名稱爲key的string減少integer
    append(key, value):名稱爲key的string的值附加value
    substr(key, start, end):返回名稱爲key的string的value的子串


對List操作的命令

    rpush(key, value):在名稱爲key的list尾添加一個值爲value的元素
    lpush(key, value):在名稱爲key的list頭添加一個值爲value的 元素
    llen(key):返回名稱爲key的list的長度
    lrange(key, start, end):返回名稱爲key的list中start至end之間的元素
    ltrim(key, start, end):截取名稱爲key的list
    lindex(key, index):返回名稱爲key的list中index位置的元素
    lset(key, index, value):給名稱爲key的list中index位置的元素賦值
    lrem(key, count, value):刪除count個key的list中值爲value的元素
    lpop(key):返回並刪除名稱爲key的list中的首元素
    rpop(key):返回並刪除名稱爲key的list中的尾元素
    blpop(key1, key2,… key N, timeout):lpop命令的block版本。
    brpop(key1, key2,… key N, timeout):rpop的block版本。
    rpoplpush(srckey, dstkey):返回並刪除名稱爲srckey的list的尾元素,並將該元素添加到名稱爲dstkey的list的頭部


對Set操作的命令

    sadd(key, member):向名稱爲key的set中添加元素member
    srem(key, member) :刪除名稱爲key的set中的元素member
    spop(key) :隨機返回並刪除名稱爲key的set中一個元素
    smove(srckey, dstkey, member) :移到集合元素
    scard(key) :返回名稱爲key的set的基數
    sismember(key, member) :member是否是名稱爲key的set的元素
    sinter(key1, key2,…key N) :求交集
    sinterstore(dstkey, (keys)) :求交集並將交集保存到dstkey的集合
    sunion(key1, (keys)) :求並集
    sunionstore(dstkey, (keys)) :求並集並將並集保存到dstkey的集合
    sdiff(key1, (keys)) :求差集
    sdiffstore(dstkey, (keys)) :求差集並將差集保存到dstkey的集合
    smembers(key) :返回名稱爲key的set的所有元素
    srandmember(key) :隨機返回名稱爲key的set的一個元素

#p#分頁標題#e#
對Hash操作的命令

    hset(key, field, value):向名稱爲key的hash中添加元素field
    hget(key, field):返回名稱爲key的hash中field對應的value
    hmget(key, (fields)):返回名稱爲key的hash中field i對應的value
    hmset(key, (fields)):向名稱爲key的hash中添加元素field 
    hincrby(key, field, integer):將名稱爲key的hash中field的value增加integer
    hexists(key, field):名稱爲key的hash中是否存在鍵爲field的域
    hdel(key, field):刪除名稱爲key的hash中鍵爲field的域
    hlen(key):返回名稱爲key的hash中元素個數
    hkeys(key):返回名稱爲key的hash中所有鍵
    hvals(key):返回名稱爲key的hash中所有鍵對應的value
    hgetall(key):返回名稱爲key的hash中所有的鍵(field)及其對應的value


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章