添加、修改数据
set key value
获取数据
get key
删除数据
del key
添加、修改多个数据
mset key1 value1 key2 value2
获取多个数据
mget key1 key2
获取数据字符个数
strlen key
追加信息到原始信息候补(如果原始信息存在就追加否则新建)
append key value
设置数据增加指定范围的值
incr key
incrby key increment
incrbyfloat key increment
设置数据减少指定范围的值
decr key
decrby key increment
setex key seconds value
pexpire key milliseconds
添加、修改、数据
hset key filedId value
获取数据
hget key fieid
hgetall key
删除数据
hdel key field1
添加、修改多个数据
hmset key field1 value1 filed2 value2
获取多个数据
hmget key fieid1 fieid2
获取哈希表中字段数量
hlen key
获取哈希表中是否存在指定的字段
hexists key fieid
获取哈希表中所有字段名或字段值
hkeyss key
hvals key
指定字段的数值数据增加指定范围
hincrby key field increment
hincrbyfloat key fieid increment
添加、修改数据
lpush key value1 value2
rpush key value1 value2
获取数据
lrange key start stop
lindex key index
llen key
获取并移出数据
lpop key
rpop key
规定时间内获取并移出数据
blopop key1 key2 timeout
brpop key1 key2 timeout
移出指定数据
lrem key count value
添加数据
sadd key member1 member2
获取全部数据
smembers keys
删除数据
srem key member1 menber2
获取集合数据总量
scard key
判断集合中是否包含指定数据
sismember key member
随机获取集合中指定数量数据
srandmember key count
随机获取集合中的某个数据并将该数据移出集合
spop key
求两个集合交并集
sinter key key2
sunion key1 key2
sdiff key1 key2
求两个集合交并集存储到指定集合中
sinterstore desination key key2
sunionstore destination key1 key2
sdiffstore destination key1 key2
将指定数据从原始集合中移动到目标集合中
smove source destination member
添加数据
radd key score1 member score2 member2
添加全部数据
rrange key start stop [withscore]
zrevrange key start stop [withscores]
删除数据
zrem key menber
按条件获取数据
zrangebyscore key min max [withscores limit]
zrevrangebyscore key max min [withscores]
条件删除数据
zremrangebyrank key start stop
zremrangebyscore key min max
删除指定key
del key
获取key是否存在
exists key
获取key的类型
type key
为指定key设置有效期
expire key sconds
pexpire key minllseconds
expireat key timestamp
pexpireat key milliseconds-timestamp
获取key有效期
ttl key
pttl key
切换key从时效性转换为永久性
persist key
查询key
keys pattern
keys *
keys it*
keys *sa
keys ??sdad # 查询所有以sdad前两个字符任意
keys user:? # 查询所有以user:开头,最后一个字符任意
keys u[sdas]er:1 # 查询所有以u开头,以er:1结尾,中间包含一个字母,s或t
为key改名
rename key newkey
renamenx key newkey
对所有key排序
sort
其它key通用操作
help @generic
切换数据库
select index
其它操作
quit
ping
echo message
移动数据
move key db
move name 1
数据清除
dbsize
flushdb
flushall
save # 备份
bgsave # 后台备份
在配置文件中添加,实现持久化存储
save 10 2 # 实现没10秒有新增两条数据就持久化一次
在配置文件中新增
appendonly yes
appebdfsync always # M每次执行命令就写入一次
appebdfsync everysec 3# 每秒写入一次
appebdfsync no # 系统控制,无法自己控制
重写方式
开启事务
输入这个命令后,再去设置值会是队列的形式去设置
multi
执行事务
exec
取消事务
在事务过程中出错执行这条即可,但前提必须要有multi
discard
执行过程
set num 10 # 设置一个值为10
setnx locak-num 1 # 设置锁,将num改为1
del lock-num -1 # 设置完成后将锁删除
分布式锁
如果长时间未操作就将锁释放
expire lock-key second
pexpire lock-key milliseconds
例如:持有锁的操作最长执行时间127ms,最短执行时间7ms。
测试百万次最长执行时间对应命令的最大耗时,测试百万次网络延迟平均耗时
锁时间设定推荐:最大耗时120%+平均网络延迟110%
如果业务最大耗时<<网络平均延迟,通常为2个数量级,取其中单个耗时较长即可
daemonize yes|no
bind 127.0.0.1
port 6379
database 16
loglevel debug | verbosel | notice | warning
logfile 端口号.log
maxclient 0
timeout 200
导入并加载配置文件信息,用于快捷创建redis公共配置较多的redis实例配置文件,便于维护。
include /path/server-端口号.conf
设置服务器端口号
port 6379
database 16
loglevel debug | verbosel | notice | warning
logfile 端口号.log
maxclient 0
timeout 200
导入并加载配置文件信息,用于快捷创建redis公共配置较多的redis实例配置文件,便于维护。
include /path/server-端口号.conf