注意

本文档适用于 Ceph 的开发版本。

ceph-kvstore-tool -- ceph kvstore manipulation tool

概要

ceph-kvstore-tool <rocksdb|bluestore-kv> <store path> command [args…]

描述

ceph-kvstore-tool 是一个 kvstore 操作工具。它允许用户离线操作 RocksDB 的数据(例如 OSD 的 omap)。

命令

ceph-kvstore-tool 实用程序使用了许多用于调试目的的命令,如下所示

list [prefix]

打印所有存储的 KV 对的键,这些 KV 对带有 URL 编码的前缀。

list-crc [prefix]

打印所有存储的 KV 对的 CRC,这些 KV 对带有 URL 编码的前缀。

dump [prefix]

打印所有存储的 KV 对的键和值,这些 KV 对带有 URL 编码的前缀。

exists <prefix> [key]

检查是否存在带有 URL 编码前缀的 KV 对。如果也指定了 key,则检查带有该前缀的 key。

get <prefix> <key> [out <file>]

获取存储的 KV 对的值,该 KV 对带有 URL 编码的前缀和键。如果也指定了 file,则将值写入该文件。

crc <prefix> <key>

获取存储的 KV 对的 CRC,该 KV 对带有 URL 编码的前缀和键。

get-size [<prefix> <key>]

获取存储的估计大小或由前缀和键指定的值的大小。

set <prefix> <key> [ver <N>|in <file>]

设置存储的 KV 对的值,该 KV 对带有 URL 编码的前缀和键。该值可以是 version_t 或文本。

rm <prefix> <key>

删除存储的 KV 对,该 KV 对带有 URL 编码的前缀和键。

rm-prefix <prefix>

删除所有存储的 KV 对,这些 KV 对带有 URL 编码的前缀。

store-copy <path> [num-keys-per-tx]

将所有 KV 对复制到由 path 指定的另一个目录。[num-keys-per-tx] 是每个事务复制的 KV 对数量。

store-crc <path>

将所有 KV 对的 CRC 存储到由 path 指定的文件中。

compact(压缩)

子命令 compact 用于压缩 kvstore 的所有数据。它将打开数据库并触发数据库的压缩。压缩后,可能会释放一些磁盘空间。

compact-prefix <prefix>

压缩由 URL 编码的前缀指定的所有条目。

compact-range <prefix> <start> <end>

压缩由 URL 编码的前缀和范围指定的某些条目。

destructive-repair

尝试(可能具有破坏性地)恢复损坏的数据库。请注意,对于 rocksdb,这可能会损坏原本未损坏的数据库——仅在万不得已时使用此命令!

stats

打印来自底层键值数据库的统计信息。这仅用于提供信息。格式和信息内容可能会因版本而异。对于 RocksDB,信息包括压缩统计信息、性能计数器、内存使用情况和 RocksDB 内部统计信息。

histogram

显示底层 KV 数据库中键值大小分布的统计信息。

可用性

ceph-kvstore-tool 是 Ceph 的一部分,Ceph 是一个大规模可扩展、开源的分布式存储系统。请参阅 Ceph 文档(网址为 https://docs.ceph.net.cn)以获取更多信息。

另请参阅

ceph(8)

由 Ceph 基金会为您呈现

Ceph 文档是由非营利性 Ceph 基金会 资助和托管的社区资源。如果您希望支持这项工作和我们的其他努力,请考虑 立即加入