菜鸟科技网

命令行如何查看Redis?

命令行查看Redis是管理和监控Redis服务器的常用方式,通过命令行工具可以高效地执行查询、配置修改、数据管理等操作,Redis提供了丰富的命令集,结合命令行工具(如redis-cli)能够满足多种运维需求,以下是关于命令行查看Redis的详细说明,包括常用命令、操作步骤及注意事项。

命令行如何查看Redis?-图1
(图片来源网络,侵删)

连接Redis服务器

在使用命令行查看Redis之前,首先需要连接到Redis服务器,默认情况下,Redis监听本地6379端口,可通过以下命令连接:

redis-cli -h host -p port -a password
  • -h:指定Redis服务器地址,默认为127.0.0.1。
  • -p:指定端口号,默认为6379。
  • -a:连接密码(如果Redis设置了认证)。 连接本地Redis无需密码时,可直接输入redis-cli;远程连接时需指定IP、端口及密码。

查看Redis基本信息

查看Redis版本和运行状态

redis-cli info server

该命令返回Redis服务器的版本、运行时长、进程ID等信息,若需查看更详细的服务器状态(如内存使用、客户端连接数等),可使用redis-cli info,或指定具体类别(如memoryclients)。

查看Redis配置信息

redis-cli config get *

该命令返回所有配置项及其当前值,若需查看特定配置项(如最大内存限制),可使用redis-cli config get maxmemory

查看Redis数据库键值

  • 查看所有键:redis-cli keys *(生产环境慎用,可能阻塞服务器)。
  • 查看键数量:redis-cli dbsize
  • 查看键类型:redis-cli type key_name

查看Redis数据内容

查看字符串类型数据

redis-cli get key_name

若键不存在,返回(nil);若值为二进制数据,需通过--raw参数以原始格式显示。

命令行如何查看Redis?-图2
(图片来源网络,侵删)

查看哈希表类型数据

redis-cli hgetall key_name

返回哈希表的所有字段和值,若需查看特定字段,使用redis-cli hget key_name field_name

查看列表类型数据

redis-cli lrange key_name 0 -1

查看列表中所有元素,0 -1表示从第一个元素到最后一个元素,若需查看指定范围,可修改索引(如0 4表示前5个元素)。

查看集合类型数据

redis-cli smembers key_name

返回集合中的所有成员,集合是无序的,且成员唯一。

查看有序集合类型数据

redis-cli zrange key_name 0 -1 withscores

返回有序集合的所有成员及其分数,按分数升序排列,若需降序排列,使用zrevrange

命令行如何查看Redis?-图3
(图片来源网络,侵删)

查看Redis性能与监控

查看实时统计信息

redis-cli info stats

返回命令执行次数、键空间命中率等性能指标。

查看慢查询日志

redis-cli slowlog get

默认返回最近的10条慢查询记录,可指定数量(如slowlog get 5),通过slowlog len查看慢查询日志长度。

查看客户端连接

redis-cli client list

显示所有客户端连接的IP、端口、连接时长等信息,通过client kill addr:port可终止指定连接。

Redis命令行操作注意事项

  1. 安全性:生产环境中避免使用keys *等可能阻塞的命令,建议使用scan命令替代:
    redis-cli scan 0 match pattern_name count 10
  2. 数据格式:二进制数据需添加--raw参数显示,否则可能以十六进制转义形式输出。
  3. 批量操作:通过管道(pipeline)提高效率,
    (echo "set key1 value1"; echo "get key1") | redis-cli

常用命令速查表

功能分类 命令示例 说明
连接服务器 redis-cli -h 192.168.1.100 -p 6379 指定IP和端口连接
查看服务器信息 redis-cli info memory 查看内存使用情况
查看键 redis-cli keys user:* 查看所有以user:开头的键
查看字符串值 redis-cli get session:123 获取指定键的值
查看哈希表 redis-cli hgetall user:100 获取哈希表的所有字段和值
查看列表 redis-cli lrange logs 0 9 获取列表前10个元素
查看慢查询 redis-cli slowlog get 5 获取最近5条慢查询记录

相关问答FAQs

Q1: 如何通过命令行查看Redis的内存使用情况?
A: 使用redis-cli info memory命令,可查看Redis的已用内存、峰值内存、碎片率等详细信息。used_memory_human字段以易读格式显示当前内存占用。

*Q2: 为什么使用`keys 命令时Redis服务器可能阻塞?** A:keys 会遍历所有键,在数据量大的情况下会消耗大量CPU时间,导致服务器无法响应其他请求,生产环境中建议使用scan命令,它通过游标分批遍历键,避免阻塞。redis-cli scan 0 match count 1000`。

分享:
扫描分享到社交APP
上一篇
下一篇