Redis实战(8)键值和服务器命令

本文涉及的产品
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介:

一、键值相关命令

keys:

返回满足给定 pattern 的所有 key
175859370.png

用表达式*,代表取出所有的 key
175946684.png

用表达式 mylist*,代表取出所有以 mylist 开头的 key
exists:

确认一个 key 是否存在
180545604.png

del:

删除一个 key
180703391.png

expire:

设置一个 key 的过期时间(单位:秒)
180956750.png

在本例中,我们设置 age 这个 key 的过期时间是 10 秒,然后我们不断的用 ttl 来获取这个
key 的有效时长.

ttl返回值:
key不存在时,返回 -2
key存在但没有设置剩余生存时间时,返回 -1
否则,以秒为单位,返回 key的剩余生存时间。

在 Redis 2.8 以前,当key不存在,或者key没有设置剩余生存时间时,命令都返回-1

move:

将当前数据库中的 key 转移到其它数据库中
181230293.png

在本例中,我先显式的选择了数据库 0,然后在这个库中设置一个 key,接下来我们将这个
key 从数据库 0 移到数据库 1,之后我们确认在数据库 0 中无此 key 了, 但在数据库 1 中存在
这个 key,说明我们转移成功了
persist:

移除给定 key 的过期时间
181441626.png

在这个例子中,我们手动的将未到过期时间的 key,成功设置为过期
randomkey:

随机返回 key 空间的一个 key
181653138.png

rename:

重命名 key
181825961.png

type:

返回值的类型
182342704.png


二、服务器命令


ping:

测试连接是否存活

1
2
3
127.0.0.1:6379>  ping
PONG
127.0.0.1:6379>

这个说明时连接成功的。

echo :

在命令行打印一些内容

1
2
3
127.0.0.1:6379>  echo  'hello world'
"hello world"
127.0.0.1:6379>

select:

选择数据库。Redis 数据库编号从 0~15,我们可以选择任意一个数据库来进行数据的存取。
183304699.png

当选择 16 时,报错,说明没有编号为 16 的这个数据库
dbsize:

返回当前数据库中 key 的数目。

1
2
3
4
127.0.0.1:6379> dbsize
(integer) 8
127.0.0.1:6379>
结果说明此库中有 8 个 key

info:

获取服务器的信息和统计。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
127.0.0.1:6379> info
# Server
redis_version:2.8.2
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:9f7a4dc70b6a0d35
redis_mode:standalone
os:Linux 3.2.0-55-generic x86_64
arch_bits:64
multiplexing_api:epoll
gcc_version:4.6.3
process_id:6756
run_id:d69ff05e10b7cae758fc13f950082d5aaec176f8
tcp_port:6379
uptime_in_seconds:2606
uptime_in_days:0
hz:10
lru_clock:246496
config_file: /home/jane/soft/redis-2 .8.2 /redis .conf
# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0
# Memory
used_memory:809384
used_memory_human:790.41K
used_memory_rss:2174976
used_memory_peak:809568
used_memory_peak_human:790.59K
used_memory_lua:33792
mem_fragmentation_ratio:2.69
mem_allocator:jemalloc-3.2.0
# Persistence
loading:0
rdb_changes_since_last_save:0
rdb_bgsave_in_progress:0
rdb_last_save_time:1386585111
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:0
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
# Stats
total_connections_received:2
total_commands_processed:81
instantaneous_ops_per_sec:0
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:2
evicted_keys:0
keyspace_hits:23
keyspace_misses:10
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:180
# Replication
role:master
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
# CPU
used_cpu_sys:0.18
used_cpu_user:0.39
used_cpu_sys_children:0.00
used_cpu_user_children:0.00
# Keyspace
db0:keys=8,expires=0,avg_ttl=0
db1:keys=1,expires=0,avg_ttl=0

此结果用于说明服务器的基础信息,包括版本、启动时间等。
monitor:

实时转储收到的请求。
在一个连接中,输入monitor,等待请求,再另一个连接中输入命令:

184329352.png

config get:

获取服务器配置信息。
184524165.png

本例中我们获取了 dir 这个参数配置的值,如果想获取全部参数据的配置值也很简单,只需
执行”config get *”即可将全部的值都显示出来。
flushdb:

删除当前选择数据库中的所有 key
flushall:
删除所有数据库中的所有 key。

184913629.png





















本文转自shayang8851CTO博客,原文链接:http://blog.51cto.com/janephp/1338592,如需转载请自行联系原作者
相关文章
|
4月前
|
人工智能 JavaScript API
零基础构建MCP服务器:TypeScript/Python双语言实战指南
作为一名深耕技术领域多年的博主摘星,我深刻感受到了MCP(Model Context Protocol)协议在AI生态系统中的革命性意义。MCP作为Anthropic推出的开放标准,正在重新定义AI应用与外部系统的交互方式,它不仅解决了传统API集成的复杂性问题,更为开发者提供了一个统一、安全、高效的连接框架。在过去几个月的实践中,我发现许多开发者对MCP的概念理解透彻,但在实际动手构建MCP服务器时却遇到了各种技术壁垒。从环境配置的细节问题到SDK API的深度理解,从第一个Hello World程序的调试到生产环境的部署优化,每一个环节都可能成为初学者的绊脚石。因此,我决定撰写这篇全面的实
720 67
零基础构建MCP服务器:TypeScript/Python双语言实战指南
|
11天前
|
消息中间件 存储 缓存
Redis 服务器全方位介绍:从入门到核心原理
Redis是一款高性能、基于内存的NoSQL数据库,支持String、Hash、List、Set、ZSet等丰富数据结构,广泛用于缓存、分布式锁、排行榜、消息队列等场景。支持持久化(RDB/AOF)、主从复制、集群部署,具备原子操作与高并发能力,是构建高可用系统的核心组件之一。(239字)
117 0
|
12天前
|
弹性计算 人工智能 前端开发
在阿里云ECS上部署n8n自动化工作流:U2实例实战
本文介绍如何在阿里云ECS的u2i/u2a实例上部署开源工作流自动化平台n8n,利用Docker快速搭建并配置定时任务,实现如每日抓取MuleRun新AI Agent并推送通知等自动化流程。内容涵盖环境准备、安全组设置、实战案例与优化建议,助力高效构建低维护成本的自动化系统。
184 5
|
2月前
|
存储 NoSQL 前端开发
Redis专题-实战篇一-基于Session和Redis实现登录业务
本项目基于SpringBoot实现黑马点评系统,涵盖Session与Redis两种登录方案。通过验证码登录、用户信息存储、拦截器校验等流程,解决集群环境下Session不共享问题,采用Redis替代Session实现数据共享与自动续期,提升系统可扩展性与安全性。
184 3
Redis专题-实战篇一-基于Session和Redis实现登录业务
|
2月前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
139 1
Redis专题-实战篇二-商户查询缓存
|
2月前
|
存储 缓存 NoSQL
Redis基础命令与数据结构概览
Redis是一个功能强大的键值存储系统,提供了丰富的数据结构以及相应的操作命令来满足现代应用程序对于高速读写和灵活数据处理的需求。通过掌握这些基础命令,开发者能够高效地对Redis进行操作,实现数据存储和管理的高性能方案。
87 12
|
2月前
|
存储 消息中间件 NoSQL
【Redis】常用数据结构之List篇:从常用命令到典型使用场景
本文将系统探讨 Redis List 的核心特性、完整命令体系、底层存储实现以及典型实践场景,为读者构建从理论到应用的完整认知框架,助力开发者在实际业务中高效运用这一数据结构解决问题。
|
3月前
|
存储 缓存 人工智能
Redis六大常见命令详解:从set/get到过期策略的全方位解析
本文将通过结构化学习路径,帮助读者实现从命令语法掌握到工程化实践落地的能力跃迁,系统性提升 Redis 技术栈的应用水平。
|
4月前
|
NoSQL Redis
Lua脚本协助Redis分布式锁实现命令的原子性
利用Lua脚本确保Redis操作的原子性是分布式锁安全性的关键所在,可以大幅减少由于网络分区、客户端故障等导致的锁无法正确释放的情况,从而在分布式系统中保证数据操作的安全性和一致性。在将这些概念应用于生产环境前,建议深入理解Redis事务与Lua脚本的工作原理以及分布式锁的可能问题和解决方案。
166 8
|
4月前
|
JSON 前端开发 Go
Go语言实战:创建一个简单的 HTTP 服务器
本篇是《Go语言101实战》系列之一,讲解如何使用Go构建基础HTTP服务器。涵盖Go语言并发优势、HTTP服务搭建、路由处理、日志记录及测试方法,助你掌握高性能Web服务开发核心技能。

热门文章

最新文章

下一篇
开通oss服务