检索/列出Redis数据库中的所有键/值对

i2loujxw  于 2022-12-28  发布在  Redis
关注(0)|答案(4)|浏览(327)

我使用的是一个在Redis上运行的ORM叫做Ohm,我很想知道数据是如何存储的,我想知道是否有办法列出Redis数据库中所有的键/值。

    • 更新日期:**

对于其他尝试使用redis-cli的用户,请使用以下命令:

$ redis-cli keys
* (press * followed by Ctrl-D)
... (prints a list of keys and exits)
$

感谢"antirez和" hellvinz!

c2e8gylq

c2e8gylq1#

您可以使用Redis发行版中的redis-cli工具来浏览Redis数据集。
只需启动该工具而不使用参数,然后键入命令来浏览数据集。
例如,KEYS将列出与全局样式模式匹配的所有键,例如:keys *您将看到所有可用的密钥。
然后你可以使用TYPE命令来检查键的类型,如果是列表,你可以使用LRANGE mykey 0 -1来获取其中的元素,如果是集合,你可以使用SMEMBERS mykey等等,查看Redis文档中所有可用命令的列表以及它们是如何工作的。

atmip9wb

atmip9wb2#

在命令行中,您还可以使用dump命令,Redis 2.6.0以后就可以使用该命令

redis-cli KEYS \* | xargs -n 1 redis-cli dump

(note如果您不介意的话,这也适用于早期版本的get命令)
更新(V2.8或更高版本):SCAN是比KEYS上级的选择,因为它不会阻塞服务器,也不会消耗大量资源。

afdcj2ne

afdcj2ne3#

只是在antirez的回应中添加了一个实用的ruby示例(我不敢和他竞争)

irb(main):002:0> require 'rubygems'
=> true
irb(main):003:0> require 'redis'
=> true
irb(main):004:0> r = Redis.new
=> #<Redis:0x8605b64 @sock=#<TCPSocket:0x8605ab0>, @timeout=5, @port=6379, @db=0, @host="127.0.0.1">
irb(main):005:0> r.keys('*')
rekjcdws

rekjcdws4#

我在这里结束是因为我在寻找如何备份redis中的所有键/值。如果这适用于你,这个命令可能会有帮助:

redis-cli bgsave

相关问题