redis 理论汇总

介绍:

  1. redis AOF持久化文件检测和修复文件 #redis-check-aof文件
  2. redis RDB持久化文件检测和修复文件 #redis-check-dump文件
  3. 启动redis哨兵 #redis-sentinel文件
  4. redis是单线程
  5. redis是一个内存数据库,在宕机或者挂机时重启会使数据丢失

一、基本命令

1)#查看所有的键
keys *

2)#键总数
dbsize

3)#检查键是否存在
exists key

4)#删除键
del key

5)#键过期
expire key seconds

ttl命令会返回键的剩余过期时间, 它有3种返回值:

大于等于0的整数: 键剩余的过期时间。
-1: 键没设置过期时间。
-2: 键不存在

6)#键类型
type key

二、String类型命令

1)#设置值
SET key value [EX seconds] [PX milliseconds] [NX|XX]

ex seconds: 为键设置秒级过期时间。
px milliseconds: 为键设置毫秒级过期时间。
nx: 键必须不存在, 才可以设置成功, 用于添加。
xx: 与nx相反, 键必须存在, 才可以设置成功, 用于更新。

#简化set操作,设置值并设置过期时间
setex key seconds value

拓展:基于set命令设置的复杂性,redis提供了setxx 和 setnx 两个命令用户简化操作

setxx 和 setnx 在实际中有什么应用场景吗?
以setnx 命令为例子,由于redis的单线程处理机制,如果有多个客户端同时执行setnx key value ,根据setnx 的特性只有一个客户端能设置成功,setnx 可以作为分布式锁的一种实现方案,redis官方给出了使用setnx实现分布式锁的方法。

setnx 设置值,只有key不存在的时候才设置成功

2)#获取键值
get key

3)#批量设置键
mset key1 value1 key2 value2 ...

4)#批量获取键
mget key1 key2 ...

5)#计数
incr key

incr命令用于对值做自增操作, 返回结果分为三种情况:

值不是整数, 返回错误。
值是整数, 返回自增后的结果。
键不存在, 按照值为0自增, 返回结果为1。
除了incr命令, Redis提供了decr(自减) 、 incrby(自增指定数字) 、decrby(自减指定数字) 、 incrbyfloat(自增浮点数)

其他不常用命令

6)#向尾部追加值
APPEND命令,向键值的末尾追加value。如果键不存在则将该键的值设置为value,即相当于 SET key value。返回值是追加后字符串的总长度。
append key value

7)#获取字符串长度
strlen key

三、Hash类型

1)#设置值

HSET key field value

例如: 

HSET USER NAME XIAOCILAO


2)#取值
HGET key field

例子:

HGET USER NAME

3)#删除Field
HDEL key field

例子:

HDEL USER NAME

4)#计算Field个数
HLEN key

例子:
HLEN USER

5)#批量获取值
HMGET key field

例子:
HMGET user name age phone

6)#批量设置值
HMSET key field1 value1 field2 value2

例子:
HMSET user1  name lisi age 28 phone 12345

7)#判断field是否存在
HEXISTS key field

例子:
HEXISTS user name
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值