redis

redis

  • redis数据结构

    String hash list set zset(sorted set)

  • 一个redis实例最多提供16个数据库0-15,默认连接0,select i选择i号数据库

redis的应用场景

  • 缓存(数据查询、短连接、新闻内容、商品内容)
  • 聊天室的好友列表
  • 任务队列(秒杀、抢购、12306)
  • 应用排行榜
  • 网站访问统计
  • 数据过期处理(可以精确到毫秒)
  • 分布式集群架构中session分离

命令

redis-server redis-cli
select 0-15
redis key: string\hash\list\set\sortedset

1.增删改查...

keys * 所有key
get
set
del
exists
type
rename 重命名
renamenx
randomkey 随机key
move key db

2.key存活时间

expire key secends
pexpirekey key milliseconds
ttl key 返回剩余存活时间
pttl key
persist key 移除过期时间

3.字符串

getrange key start end 返回子串
getset key value 设置key值并返回旧值
mget key1 key2 ... 返回多个key
mset key1 value1 key2 value 2 ... 设置多个key
setex key seconds value 设置值同时设置存活时间
setnx key 当key不存在设置key值
strlen key 返回key长度
incr key 数字+1
decr key 数字-1
incrby key num
decrby key num
incrbyfloat key float

4.hash

hset hash key value
hget hash key
hmset hash key1 value1 key2 value2
hmget hash key1 key2
hkeys hash 返回该hash的所有key
hvals hash
hgetall hash 返会所有键值
hlen hash 获取hash中字段数量
hincrby
hdel
hexists

5.list

lpush list value
rpush
lpop
rpop
blpop
brpop
lrange list start end 列出

6.set

sadd
spop 移除并返回set中一个随机元素
smove set1 set2 member 将member元素从set转移
smembers 查看set中所有元素
sismember set member 判断member是否是set中元素
scard 给出set中的元素数
srandmember set [count] 给出set中随机一个或count个元素
sdiff set1 set2... 返回给定集合的差集
sdiffstore destset set1 set2 返回给定集合的差集存在destSet中
sinter 返回给定集合的交集
sinterstore
sunion
sunionstore

7.zset有序集合

zset add zset score member
zcard
zcount zset min max 计算在min与max之间的成员数
zrange
zrangebyscore
zincreby zset num member 给member加上增量nums

8.消息订阅与发布

#创建频道
subscribe chat1
#批量创建频道
psubscribe chat*
#发送消息
publish chat1 "hello"

9.事务

multi	开启事务	相当于begin transation
exec/discard 相当于commit/rollback

配置


bind 127.0.0.1   #默认的是127.0.0.1,这样的话只有本机能访问,0.0.0.0表示任意地址可访问
port 6379    #redis服务端口,默认是6379
daemonize yes #默认是no,修改为yes后redis启动在后台运行,否则会在前台挂起运行
requirepass pdtc12#$ #配置redis访问密码
# dir /etc/redis    #redis工作目录,默认是当前目录,aof备份、rdb备份文件就保存在这个目录中
logfile  /etc/redis/redis.log  #日志文件,默认为空,可以指定日志路径与日志名称
# 默认启动RDB备份,注释掉所有的save就会关闭rdb备份
save 3600 1    #rdb备份的默认配置,3600秒后,如果至少有一个键值改变就执行rdb备份
save 300 100   #rdb备份的默认配置,300秒后,如果至少有一百个键值改变就执行rdb备份
save 60 10000  #rdb备份的默认配置,60秒后,如果至少有一万个键值改变就执行rdb备份
# AOF配置
appendonly yes #aof备份,默认为no关闭状态,yes为启用aof备份
appendfilename "appendonly.aof"  #aof备份文件名称,默认为"appendonly.aof"
appendfsync everysec #aof备份同步频率,默认使用everysec,每秒同步一次数据写入aof备份中,always,每次写入都立刻同步到aof
auto-aof-rewrite-percentage 100 #比上次重写后的体量增加了100%时自动触发重写,与下面的配置一起使用
auto-aof-rewrite-min-size 64mb  #当aof备份文件大小超过64mb时触发重写,最好是使用手动执行bgrewriteaof
aof-load-truncated no  #设置为yes,当aof备份文件损坏redis重启服务时发出日志通知用户这个事件,并继续启动.

posted @ 2020-05-05 16:56  赵钱富贵  阅读(260)  评论(0编辑  收藏  举报