加載鏡像
查詢官方鏡像及其版本信息
docker search redis
加載最新鏡像
docker pull redis:lastest
查看本地鏡像
docker images
運行容器
啟動實例
docker run --name 實例名 -p 6379:6379 -d redis --requirepass "123456"
查看運行狀態
docker ps -a
啟用redis-cli,即redis客戶端
docker exec -it 實例名 redis-cli
修改密碼
# 查看正在運行的容器
docker ps
# 進入對應的redis
docker exec -it redis容器的名稱 /bin/bash
# 運行redis-cli
redis-cli
# 如果之前有密碼使用如下命令
auth 123456 # 之前的密碼
# 設置新密碼 如果沒有密碼直接執行這一步即可設置密碼
config set requirepass 12341234
# 退出redis
exit
# 退出容器內部的操作也是一樣
exit
常用命令
key
set key1 value1 設置key
get key1 獲取key
mset key1 value1 key2 value2 key3 value3
mget key1 key2 key3
del key1 刪除key
exists key 判斷是否存在key
expire key 10 10過期
pexpire key 1000 毫秒
persist key 刪除過期時間
string
set name cxx
get name
getrange name 0 -1 字符串分段
getset name new_cxx 設置值,返回舊值
mset key1 key2 批量設置
mget key1 key2 批量獲取
setnx key value 不存在就插入(not exists)
setex key time value 過期時間(expire)
setrange key index value 從index開始替換value
incr age 遞增
incrby age 10 遞增
decr age 遞減
decrby age 10 遞減
incrbyfloat 增減浮點數
append 追加
strlen 長度
getbit/setbit/bitcount/bitop 位操作
hash
hset myhash name cxx
hget myhash name
hmset myhash name cxx age 25 note "i am notes"
hmget myhash name age note
hgetall myhash 獲取所有的
hexists myhash name 是否存在
hsetnx myhash score 100 設置不存在的
hincrby myhash id 1 遞增
hdel myhash name 刪除
hkeys myhash 只取key
hvals myhash 只取value
hlen myhash 長度
list
lpush mylist a b c 左插入
rpush mylist x y z 右插入
lrange mylist 0 -1 數據集合
lpop mylist 彈出元素
rpop mylist 彈出元素
llen mylist 長度
lrem mylist count value 刪除
lindex mylist 2 指定索引的值
lset mylist 2 n 索引設值
ltrim mylist 0 4 刪除key
linsert mylist before a 插入
linsert mylist after a 插入
rpoplpush list list2 轉移列表的數據
set
sadd myset redis
smembers myset 數據集合
srem myset set1 刪除
sismember myset set1 判斷元素是否在集合中
scard key_name 個數
sdiff | sinter | sunion 操作:集合間運算:差集 | 交集 | 並集
srandmember 隨機獲取集合中的元素
spop 從集合中彈出一個元素
zset
zadd zset 1 one
zadd zset 2 two
zadd zset 3 three
zincrby zset 1 one 增長分數
zscore zset two 獲取分數
zrange zset 0 -1 withscores 范圍值
zrangebyscore zset 10 25 withscores 指定范圍的值
zrangebyscore zset 10 25 withscores limit 1 2 分頁
Zrevrangebyscore zset 10 25 withscores 指定范圍的值
zcard zset 元素數量
Zcount zset 獲得指定分數范圍內的元素個數
Zrem zset one two 刪除一個或多個元素
Zremrangebyrank zset 0 1 按照排名范圍刪除元素
Zremrangebyscore zset 0 1 按照分數范圍刪除元素
Zrank zset 0 -1 分數最小的元素排名為0
Zrevrank zset 0 -1 分數最大的元素排名為0
Zinterstore
zunionstore rank:last_week 7 rank:20150323 rank:20150324 rank:20150325 weights 1 1 1 1 1 1 1
排序:
sort mylist 排序
sort mylist alpha desc limit 0 2 字母排序
sort list by it:* desc by命令
sort list by it:* desc get it:* get參數
sort list by it:* desc get it:* store sorc:result sort命令之store參數:表示把sort查詢的結果集保存起來