1. 程式人生 > 實用技巧 >redis的常用命令及php-redis的使用

redis的常用命令及php-redis的使用

  1. 連線操作命令

    • quit:關閉連線(connection)

    • auth:簡單密碼認證

    • help cmd: 檢視cmd幫助

  2. 持久化

    • save:將資料同步儲存到磁碟

    • bgsave:將資料非同步儲存到磁碟

    • lastsave:返回上次成功將資料儲存到磁碟的Unix時戳

    • shundown:將資料同步儲存到磁碟,然後關閉服務

  3. 遠端服務控制

    • info:提供伺服器的資訊和統計

    • monitor:實時轉儲收到的請求

    • slaveof:改變複製策略設定

    • config:在執行時配置Redis伺服器

  4. 對value操作的命令

    
    exists(key):確認一個key是否存在
    
    del(key):刪除一個key
    
    type(key):返回值的型別
    
    keys(pattern):返回滿足給定pattern的所有key
    
    randomkey:隨機返回key空間的一個key
    
    rename(oldname, newname):重新命名key
    
    dbsize:返回當前資料庫中key的數目
    
    expire:設定一個key的活動時間(s)
    
    ttl:獲得一個key的活動時間
    
    select(index):按索引查詢
    
    move(key, dbindex):移動當前資料庫中的key到dbindex資料庫
    
    flushdb:刪除當前選擇資料庫中的所有key
    
    flushall:刪除所有資料庫中的所有key
    
  5. String (字串資料型別的相關命令用於管理 redis 字串值)

    
    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的值
    
    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
    
    getrange(key, start, end):返回名稱為key的string的value的子串
    
  6. 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的頭部
    
  7. Set (Set是 String 型別的無序集合。集合成員是唯一的,這就意味著集合中不能出現重複的資料。)

    
    sadd(key, member):向名稱為key的set中新增元素
    
    srem(key, member) :刪除名稱為key的set中的元素
    
    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的一個元素
    
  8. Hash (hash是一個 string 型別的 field 和 value 的對映表,hash 特別適合用於儲存物件。)

    hset(key, field, value):向名稱為key的hash中新增元素
    
    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
    
  9. Sort set (有序集合和集合一樣也是string型別元素的集合,且不允許重複的成員)

    zadd (key,score1,value1)[score2 value2] 向有序集合新增一個或多個成員,或者更新已存在成員的分數
    
    zcard (key) 獲取有序集合的成員數
    
    zrange key start(score1) stop(score2) WITHSCORES 通過索引區間返回有序集合指定區間內的成員
    
    zrank key value 返回有序集合中指定成員的索引
    
  10. php-redis常用命令

    $redis = new Redis();
    connect, open 連結redis服務
    引數
    host: string,服務地址
    port: int,埠號
    timeout: float,連結時長 (可選, 預設為 0 ,不限連結時間)
    注: 在redis.conf中也有時間,預設為300
    pconnect, popen 不會主動關閉的連結
    setOption 設定redis模式
    getOption 檢視redis設定的模式
    ping 檢視連線狀
    
    清空當前資料庫
    flushDB
    清空所有資料庫
    flushAll
    $redis->flushall();
    檢視所有資料
    key*
    $redis->keys('*')