*Redis DBSIZE 命令

DBSIZE 返回当前选中数据库的 key 总数。


*语法

DBSIZE

*参数说明

该命令无额外参数。


*返回值

返回一个整数,表示当前数据库中的 key 数量。


*时间复杂度

O(1)(Redis 内部维护了计数器)。


*示例

*查看数据库大小

> DBSIZE
(integer) 42

*空数据库

> DBSIZE
(integer) 0

*常见错误

错误 原因 解决
ERR wrong number of arguments 传入了额外参数 DBSIZE 不接受任何参数

*最佳实践

  • 用于快速评估数据库规模,比 KEYS * 安全得多。
  • 监控告警中可设置 DBSIZE 阈值防止键数量爆炸。
  • 配合 SELECT 切换数据库后分别统计。

*FAQ

DBSIZE 和 INFO keyspace 有什么区别? DBSIZE 仅返回当前数据库;INFO keyspace 返回所有数据库的键数量。

过期 key 算在 DBSIZE 中吗? 算,直到被惰性删除或定期任务清理。

集群模式下 DBSIZE 准确吗? 仅统计当前节点当前数据库,不反映整个集群。