redis基本操作和 过期时间设置以及持久化方案
Redis是NOSQL阵营中的一种数据库,主要用于存储缓存
五大数据类型:字符串(String)、散列(hash)、列表(list)、集合(set)、有序集合(SortedSett 、zset)
String: set key value 键值对存储值
get key 通过键获取值
keys * 查看所有键
incr key key的值加1,只能为数值
deci key key的值减1,只能为数值
del key 根据键删除键值对
Hash hset key key value key-map,map中为key-value
例如:hset 1605 01 zhangsan 1605班里01号张三
hget key 通过key获取Map
keys * 查看所有大key
hget 1605 01 通过两个key获取值
hkeys 1605 通过一个key获取小key
hvals 1605 通过小key获取值
hgetall 1605 获取所有key-value
hdel 1605 01 删除1605下01对应的数据
List lpush list a b c d e (左)添加abcde到列表list中
rpush list 1 2 3 4 5 (右)添加12345
range list 0 -1 展示所有list中的数据
lpop list 冒泡,删除第一个元素
Set sadd card 01 02 03 03 04 05 添加进set中,限显示结果不重复
smembers card 展示集合所有元素
srem card 04 删除
交集、并集:
Sadd seta a b c d e
Sadd setb c d e f g
Sdiff seta setb // a中独有元素
Sdiff setb seta // b中独有元素
Sinter seta setb //交集
Sunion seta setb //并集
SortedSet(zset): 有顺序不可重复
zadd zset1 2 a 5 b 1 c 6 d 添加zset值
zrange zset1 0 -1 展示
zrem zset1 a 删除
zrevrange zset1 0 -1 逆序展示
zrange zset1 0 -1 withscores 带编号展示
zrevrange zset1 0 -1 withscores 带编号逆序展示
设置key的过期时间。
Expire key second:设置key的过期时间
Ttl key:查看key的有效期
Persist key:清除key的过期时间。Key持久化。
是-1 代表是持久化的 -2代表不存在 是正数表示正在倒计时
redis持久化方案
Redis的所有数据都是保存到内存中的。
Rdb:快照形式,定期把内存中当前时刻的数据保存到磁盘。Redis默认支持的持久化方案。
aof形式:append only file。把所有对redis数据库操作的命令,增删改操作的命令。保存到文件中。数据库恢复时把所有的命令执行一遍即可。
Rdb:在redis.conf中配置
根据需求修改下面保存频率,一般不动
Aof
修改APPendonly为 yes 保存命令
修改后不须关闭快照