Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。 Redis 与其他 key - value 缓存产品有以下三个特点:
以Ubuntu20.4为例
运行安装命令
sudo apt-get install redis-server
sudo vim /etc/redis/redis.conf
部分命令可直接通过键盘Tab键补全
# 卸载命令sudo apt-get purge --auto-remove redis-server # 关闭命令sudo service redis-server stop# 开启命令sudo service redis-server start# 重启命令sudo service redis-server restart# Redis命令行客户端redis-cli# Redis服务器redis-server# Redis性能测试工具redis-benchmark# AOF文件修复工具redis-check-aof# RDB文件检查工具redis-check-rdb
# 卸载命令
sudo apt-get purge --auto-remove redis-server
# 关闭命令
sudo service redis-server stop
# 开启命令
sudo service redis-server start
# 重启命令
sudo service redis-server restart
# Redis命令行客户端
redis-cli
# Redis服务器
redis-server
# Redis性能测试工具
redis-benchmark
# AOF文件修复工具
redis-check-aof
# RDB文件检查工具
redis-check-rdb
keys [pattern] # pattern支持glob风格通配符格式
exists key # 如果键存在则返回整型1,反之返回0
del key [key ...] # 支持批量删除,返回值为删除键的个数
type key
dbsize
expire key seconds # key在seconds秒后过期
ttl key # 查询key在多少秒后过期# 如果返回值为-1,则代表key存在且没有设置过期时间# 如果返回值为-2,则代表key已不存在
ttl key # 查询key在多少秒后过期
# 如果返回值为-1,则代表key存在且没有设置过期时间
# 如果返回值为-2,则代表key已不存在
persist key
flushall
flushdb
select index # 默认使用0号数据库
string可以存储任何形式的字符串,包括二进制数据。
get key # 当键不存在时会返回空(nil)
set key valuesetnx key value # 键不存在时才设置set key value xx # 键存在时才设置(属更新操作)
set key value
setnx key value # 键不存在时才设置
set key value xx # 键存在时才设置(属更新操作)
incr key # 使当前键自增1,并返回自增后的值decr key # 使当前键自减1,并返回自减后的值incrby key num # 使当前键自增numdecrby key num # 使当前键自减num
incr key # 使当前键自增1,并返回自增后的值
decr key # 使当前键自减1,并返回自减后的值
incrby key num # 使当前键自增num
decrby key num # 使当前键自减num
strlen key # 返回键的长度,不存在则返回0
append key value # 如果键不存在则设置新的键值,返回值为总长度
mget key [key ...] # 获取mset key1 value1 key2 value2 ... # 新增
mget key [key ...] # 获取
mset key1 value1 key2 value2 ... # 新增
getrange key start end
setrange key index value
hash 是一个 string 类型的 field(字段)和 value(值)的映射表,适合用于存储对象。
# 获取单个属性对应的值hget key field# 获取多个属性对应的值hmget key field [field ...]# 获取散列所有属性与值hgetall key# 获取散列所以属性对应的值hvals key# 获取散列键对应的所有属性hkeys key
# 获取单个属性对应的值
hget key field
# 获取多个属性对应的值
hmget key field [field ...]
# 获取散列所有属性与值
hgetall key
# 获取散列所以属性对应的值
hvals key
# 获取散列键对应的所有属性
hkeys key
# 设置单个散列hset key field value# 设置散列属性,如果属性已存在,则设置失败hsetnx key field value# 设置散列多个属性值hmset key field1 value1 field2 value2 ...
# 设置单个散列
hset key field value
# 设置散列属性,如果属性已存在,则设置失败
hsetnx key field value
# 设置散列多个属性值
hmset key field1 value1 field2 value2 ...
hdel key field
hexists key value
hlen key
# 从列表右侧插入值rpush key value1 value2 ...# 从列表左侧插入值lpush key value1 value2 ...# 在列表指定值的前/后插入新值linsert key before|after value newValue
# 从列表右侧插入值
rpush key value1 value2 ...
# 从列表左侧插入值
lpush key value1 value2 ...
# 在列表指定值的前/后插入新值
linsert key before|after value newValue
# 从列表左侧删除一个元素lpop key# 从列表右侧删除一个元素rpop key# 根据count值删除所有相同值的元素# (1)count>0,从左到右,删除最多count个value相等的项# (2)count<0,从右到左,删除最多Math.abs(count)个value相等的项# (3)count=0,删除所有value相等的项lrem key count value# 根据索引范围修改列表ltrim key start end
# 从列表左侧删除一个元素
lpop key
# 从列表右侧删除一个元素
rpop key
# 根据count值删除所有相同值的元素
# (1)count>0,从左到右,删除最多count个value相等的项
# (2)count<0,从右到左,删除最多Math.abs(count)个value相等的项
# (3)count=0,删除所有value相等的项
lrem key count value
# 根据索引范围修改列表
ltrim key start end
# 获取列表指定索引范围内所有元素# start与end为闭区间lrange key start end# 获取列表指定索引的元素lindex key index# 获取列表长度llen key
# 获取列表指定索引范围内所有元素
# start与end为闭区间
lrange key start end
# 获取列表指定索引的元素
lindex key index
# 获取列表长度
llen key
# 设置列表指定索引对应的值为newValuelset key index newValue
# 设置列表指定索引对应的值为newValue
lset key index newValue
# 向集合键中添加元素,如果元素存在,则添加失败sadd key element
# 向集合键中添加元素,如果元素存在,则添加失败
sadd key element
# 删除集合中指定的元素srem key element# 从集合中随机删除count个元素# 移除后会返回移除的元素spop key [count]
# 删除集合中指定的元素
srem key element
# 从集合中随机删除count个元素
# 移除后会返回移除的元素
spop key [count]
# 获取集合的数量scard key# 判断元素是否存在sismember key element# 从集合中随机获取count个元素srandmember key [count]
# 获取集合的数量
scard key
# 判断元素是否存在
sismember key element
# 从集合中随机获取count个元素
srandmember key [count]
# 获取集合间的差集sdiff key1 key2 ...# 获取集合间的交集sinter key1 key2 ...# 获取集合间的并集sunion key1 key2 ...
# 获取集合间的差集
sdiff key1 key2 ...
# 获取集合间的交集
sinter key1 key2 ...
# 获取集合间的并集
sunion key1 key2 ...
zadd key score element
zrem key element# 删除指定排名内的升序元素zremrangebyrank key start end# 删除指定分数内的升序元素zremrangebyscore key minScore maxScore
zrem key element
# 删除指定排名内的升序元素
zremrangebyrank key start end
# 删除指定分数内的升序元素
zremrangebyscore key minScore maxScore
# 获取元素的分数zscore key element# 获取元素总个数zcard key# 按照升序排序获取指定索引范围内的元素# WITHSCORES属性控制是否输出分数值zrange key start end [WITHSCORES]# 按照升序排序获取指定分数范围内的元素zrangebyscore key minScore maxScore [WITHSCORES]# 获取有序集合内在指定分数范围内的个数zcount key minScore maxScore
# 获取元素的分数
zscore key element
# 获取元素总个数
zcard key
# 按照升序排序获取指定索引范围内的元素
# WITHSCORES属性控制是否输出分数值
zrange key start end [WITHSCORES]
# 按照升序排序获取指定分数范围内的元素
zrangebyscore key minScore maxScore [WITHSCORES]
# 获取有序集合内在指定分数范围内的个数
zcount key minScore maxScore
原文链接:http://www.cnblogs.com/kangyz/p/15706759.html
本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728