我对redis和Nosql数据库一般都很陌生。我脑子里有几个问题。我正在编写一些代码来测试rediska库中的redis,我想看看redis如何将值存储在数据库中。 我真的很困惑我的问题是:
如果我在数据库中存储了一些值,我如何通过redis cli访问它们?有没有可以列出所有列表的命令?
例如,我正在测试rediska库附带的retwitter应用程序:
$userData = $form->getValues();
$userData['id'] = User::fetchNextId();
// save user
$user = new User($userData['id']);
$user->setValue($userData);
$users = new Users();
$users->add($userData['id']);
在最后一条指令之后,userid将保存到db。我想用它的客户端查询redis来查看它。 我怎么能这样做?
答案 0 :(得分:2)
您始终可以使用KEYS命令(在本例中为keys *
)检查存储在数据库中的所有密钥。
找到要检查的密钥后,使用TYPE将检索密钥的类型。注意案例(即User
和user
是不同的密钥)。
根据类型,您现在可以过滤full command list以查找针对该类型发布的内容。
现在浏览Rediska示例,Users
是Rediska_Key_Set
的子类,因此在Redis中结构是SET
。您可以使用these commands查询集。
(例如,SMEMBERS [keyName]
将列出该集的所有成员。)
最后,您始终可以在MONITOR
中调用redis-cli
命令,然后访问该应用程序。然后,针对Redis发出的每个命令都将被转储到屏幕上。