redis 理论汇总

redis 理论汇总,第1张

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

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5687565.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存