参考:http://www.redis.net.cn/tutorial/3501.html
http://www.redis.cn/commands/append.html reids中文官方网站
##安装、配置和简单使用
详细信息,请阅读参考资料
1. redis-server redis.conf(配置文件) 启动服务器
2. redis-cli -h localhost -p 6379 -a password
3. 常用命令
命令 | 示例 | 说明 |
---|---|---|
del key | del a | 根据键 删除数据 |
exists key | exists a | a 存在则返回true,否则返回false |
##介绍
- 基于内存的key-value型数据库
- 支持序列化
- 支持丰富的数据类型(String、list、hash、set、zset)
- 发布订阅模式
- 支持原子操作
##String
命令 | 示例 | 说明 |
---|---|---|
set key value | set a ‘123’ | 设置值 |
get key | get a | 根据键获取值 |
getrange key start end | get a 1 2 | 返回子字符串[start,end) |
setrange key start val | set a 1 “456” | 从start位置用val覆写key对应字符串 |
strlen key | strlen a | 返回指定key值得长度 |
setnx key val | setex a “1” | 当a不存在时设置a 的值 |
mset key val [key val] | mset a 123 b 456 | 同时设置多个值 |
mget key1 [key2] | mget a b | 获取指定key的值 |
msetnx key val [key val] | msetex a 123 b 456 | 当对应的key不存在时,同时设置多个值 |
append key val | append a “append” | 将val追加到key,若key不存在,则创建 |
##list
命令 | 示例 | 说明 |
---|---|---|
lpush key value [val2]… | lpush a “xb” | 列表头添加元素 |
rpush key value [val2]… | rpulsh a “xb2” | 列表尾添加元素 |
lpushx key val | lpushx a “xb3” | 若列表存在,列表头添加val |
rpushx key val | rpushx a “xb3” | 若列表存在,列表尾添加val |
lpop key | lpop a | 返回并移除列表头元素 |
rpop key | rpop a | 返回并移除列表尾元素 |
lindex key index | lindex a 1 | 通过索引检索值 |
linsert key BEFOR | AFTER pivot val | linsert a after 1 23 |
llen key | llen a | 返回列表长度 |
lrem key count val | lrem a 1 “xb3” | count>0:从表头开始删除count个与给定值相等的成员 count=0:删除所有与给定值得成员 count<0:从表尾开始删除count个与给定值相等的成员 |
##hash
命令 | 示例 | 说明 |
---|---|---|
hset key field val | hset a name xb | 设置key 的field为val |
hget key field | hget a name | 获取key的field字段值 |
hmset key field1 val1 [field2 val2]… | hmset stu name “xb” sex “male” | 批量设置hash值 |
hmget key field [f2]… | hmget stu name age | 返回指定key指定字段 |
hgetall key | hgetall stu | 获取指定hash所有值 |
hsetnx key field val | hsetnx a name “xb” | 仅当key存在name字段是设置其值尾val |
hlen key | hlen stu | 获取指定key hash字段个数 |
hdel key field | hdel stu name | 删除指定filed |
hexists key field | hexists stu name | 判断指定hash是否存在字段 |
hkeys key | hkeys stu | 返回指定key所有field名称 |
hvals key | hvals stu | 返回指定key所有的vals |
##set
命令 | 示例 | 说明 |
---|---|---|
sadd key val [val2…] | sadd a “1” “2” | 添加元素 |
srem key val | srem a “1” | 移除指定元素 |
scard key | scard a | 返回集合的成员数 |
sdiff key [key2 …] | sdiff a b | 返回集合a b差集 |
sdiffstore dest key [key2…] | sdiffstore c a b | c=a-b |
sinter key [key2…] | sinter a b | 返回key key2 …交集 |
sinterstore dest key [key2…] | sinterstore c a b | c=a∩b… |
sunion key [key2…] | sunion a b | 返回 key key2并集 |
sunionstore dest key [key2…] | sunionstore c a b | c=a∪b… |
sismember key value | sismember a name | 检查value是否是key的成员 |
smembers key | smembers a | 返回key的所有成员 |
##zset
命令 | 示例 | 说明 |
---|---|---|
zadd key score val [score2 val2…] | zadd a 1 xb 2 xb2 | 添加成员排序值为score |
zcard key | zcard a | 返回对应zset的大小 |
zcount key min max | zcount 10 19 | 返回score在min和max之间的成员 |
zrange key start end [withscores] | zrang a 1 3 withscores | 返回zset排序后 start(包含)到end(包含)间的成员 |
zrangebyscore key start end | zrangebyscore z 2 10 | 返回分数为[2,10]的成员(闭区间,包含开始和结束) |
zrem key mbr [mbr2…] | zrem a 1 | 删除指定的成员 |