redis基本命令

redis基本命令

注意:我使用的版本是6.0.10,不同版本可能略有差别

redis服务和客户端都启动之后,就可以进行存取操作了

测试连接

复制代码
ping

基本存取

复制代码
set k1 hello
----------------
OK


get k1
----------------
"hello"

切换数据库

redis默认存在16个数据库,默认使用的是0,可以使用select index来切换数据库(索引从0开始)

复制代码
select 2

清除数据

根据key删除

复制代码
del k2

清除当前库的数据

复制代码
flushdb

清除所有库的数据

复制代码
flushall

key操作

判断key是否存在

复制代码
EXISTS k1

查看当前数据库的key的数量

复制代码
dbsize

查看所有的key

复制代码
keys *

在生产环境最好不要使用keys命令,该命令为O(N),数据量大的情况下会导致redis阻塞其他操作,而且一次性返回所有的keys,对内存的消耗也很大,建议使用scan命令来操作

scan就是专门用来解决keys导致redis停顿的问题的,scan是一种迭代命令,其对keys进行了分解,即原本使用一个keys请求一次匹配获取所有符合的key的操作,分解了多次scan操作,每次scan操作返回匹配的key的一个子集,并记录游标,根据游标来进行偏移,这样每个scan请求的操作时间很短,多次scan请求之间可以执行其他命令,故减少对其他命令执行的阻塞,直到最后一个scan请求发现没有数据可返回了,则操作完成,汇总该次所有scan请求的数据,从而达到与keys命令一次获取的数据相同

复制代码
#scan cursor [MATCH pattern] [COUNT count] [TYPE type]
# cursor表示游标
# MATCH pattern 查询key的条件,可以做模糊查询
# COUNT count  返回的条数
# TYPE type 查询对应类型的key(string/list/set/hash/zset)
scan 0 MATCH user_* COUNT 1000

移动key到其他库

这里将key移动到其他库,当前库该key值就没有了

复制代码
move k1 2

设置过期时间

复制代码
#单位为秒
expire k2 100
#单位毫秒
pexpire k3 100

也可以在set值的时候设置过期时间

复制代码
#ex单位秒
set k2 v2 ex 20
#px单位秒
set k3 v3 px 30

查看过期时间

查看还有多少秒过期,-1表示永不过期,-2表示已过期

复制代码
ttl k2

清除生存时间

将过期时间清除,变成永不过期

复制代码
persist key

查看该key的值类型

复制代码
# 返回的是值得类型 如string/list/set/hash/zset
type k2

# 查看key的内部结构和编码等信息 Value at:0x7ffc97c044f0 refcount:1 encoding:embstr serializedlength:3 lru:11351195 lru_seconds_idle:5363
debug object k4

随机返回一个key

复制代码
randomkey

重命名key

复制代码
#rename key newkey
rename k1 key1

获取服务器信息

复制代码
# 返回服务器的基本信息以及配置信息
info
# 返回部分信息
info cpu

# 获取服务器所有配置  可以将*换成具体的配置名称来获取具体的配置
config get *

监控

复制代码
# 监控服务器收到的请求
monitor

慢查询

需要配置slowlog-log-slower-than(阈值,单位微妙,默认10000,也就是10ms。如果配置为0,会记录所有的命令,如果配置小于0,则任何命令都不记录)和slowlog-max-len(存储最大条数)

复制代码
# 获取慢查询日志
# slowlog command [args]
# 2表示返回两条
slowlog get 2

# 获取慢查询日志条数
slowlog len

#清空慢查询
slowlog reset

客户端

复制代码
# 列出所有的连接
client list

# 杀死某个连接
client kill 127.0.0.1:57175

# 获取连接的名称
client getname

# 设置连接名称
client setname "name"

统计信息

复制代码
# --stat可以实时获取redis的重要统计信息
redis-cli --stat

https://zhhll.icu/2021/数据库/非关系型数据库/redis/基础/2.redis基本命令/

本文由mdnice多平台发布

相关推荐
Tiger Z16 小时前
R 语言科研绘图第 38 期 --- 饼状图-玫瑰
开发语言·程序人生·r语言·贴图
软件测试曦曦3 天前
10:00开始面试,10:08就出来了,问的问题有点变态。。。
自动化测试·软件测试·功能测试·程序人生·面试·职场和发展
程序猿chen3 天前
JVM考古现场(十七):鸿蒙初辟——从太极二进到混沌原初的编译天道
开发语言·jvm·git·后端·程序人生·java-ee·改行学it
步行cgn4 天前
Java 集合有序性与重复性总结及记忆技巧
java·开发语言·程序人生·面试·个人开发·学习方法
珊瑚里的鱼6 天前
第五讲(下)| string类的模拟实现
开发语言·c++·笔记·程序人生·算法·visualstudio·visual studio
程序猿chen6 天前
《JVM考古现场(十六):太初奇点——从普朗克常量到宇宙弦的编译风暴》
jvm·git·后端·程序人生·金融·java-ee·量子计算
电星托马斯6 天前
Linux如何设置bash为默认shell
linux·运维·服务器·笔记·程序人生·bash·个人开发
欲儿7 天前
在线记事本——支持Markdown
前端·javascript·程序人生·sqlite·php·轻量级在线记事本
测试界吖吖7 天前
HTTPS 之fiddler抓包--jmeter请求
自动化测试·软件测试·功能测试·jmeter·程序人生·https·fiddler
程序员可可7 天前
JMeter接口自动化发包与示例
运维·自动化测试·软件测试·功能测试·jmeter·程序人生·自动化