我是卡桑德拉的新手,试图使用卡桑德拉实现一个玩具应用程序。我已经在我的Cassandra DB中创建了一个键空间和几个列族,但我忘记了集群的名称。

我试图找到是否有任何查询可以列出所有可用的键空间。

有人知道这样的查询或命令吗?


当前回答

登录到CQLSH desc用于; 从system_schema中选择*。用于;

其他回答

我建议使用grep和awk的组合:

root@DC1-Node1:/home# nodetool tablestats | grep "Keyspace :" | awk -F ":" '{print $2}'
 system_traces
 system
 system_distributed
 system_schema
 device_tool
 system_tool

[cqlsh 4.1.0 | Cassandra 2.0.4 | CQL spec 3.1.1 | Thrift protocol 19.39.0]

目前,要使用的命令是:

DESC[RIBE] keyspaces;

登录到CQLSH 使用下面的命令获取当前密钥空间的名称/列表 SELECT keyspace_name FROM system_schema.keyspaces;

Desc键空间会帮你。

如果希望在cqlsh工具之外执行此操作,可以在系统密钥空间中查询schema_keyspaces表。还有一个名为schema_columnfamilies的表,它包含关于所有表的信息。

description和SHOW命令只能在cqlsh和cassandra-cli下使用。