如何列出Cassandra中所有可用的键空间?

She*_*har 156 cassandra cassandra-cli

我是Cassandra的新手,并尝试使用Cassandra实现一个玩具应用程序.我在Cassandra DB中创建了一个键空间和几个列族,但我忘记了我的簇的名称.

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

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

小智 310

[cqlsh 4.1.0 | Cassandra 2.0.4 | CQL规范3.1.1 | 节俭协议19.39.0]

目前,使用的命令是:

DESCRIBE keyspaces;
Run Code Online (Sandbox Code Playgroud)

  • 接受这个作为答案!顺便说一下,输出会在一行中打印多个键空间名称. (9认同)
  • Cassandra还允许使用以下快捷命令:DESC键空间 (2认同)

The*_*heo 90

如果要在cqlsh工具外部执行此操作,可以schema_keyspacessystem键空间中查询表.还有一个表schema_columnfamilies,其中包含有关所有表的信息.

DESCRIBESHOW命令只有在工作cqlshcassandra-cli.


Pra*_*asu 26

它非常简单.只需给出以下命令列出所有键空间.

Cqlsh>描述密钥空间;

如果要使用SQL查询检查系统架构中的键空间

下面是命令.

SELECT * FROM system_schema.keyspaces;
Run Code Online (Sandbox Code Playgroud)

希望这能回答你的问题......

您可以通过以下资源了解和创建键空间的说明.

文档:

https://docs.datastax.com/en/cql/3.1/cql/cql_reference/create_keyspace_r.html https://www.i2tutorials.com/cassandra-tutorial/cassandra-create-keyspace/


She*_*har 13

找到它... show keyspaces命令列出所有键空间.我想早些时候,当我尝试这个命令时,我忘了在'键空间'中给出最后的''

  • 您可以使用制表符完成来查看有关如何完成cassandra-cli或cqlsh命令的提示.如果您忘记语法,这可能对您有所帮助.例如,只需键入"show"然后选项卡以查看有效的show命令. (7认同)
  • 答案的第二点(对某些人来说)是答案中最有价值的部分."cqlsh"和"cassandra-cli"之间的事情有很大不同(问题海报并没有表明他正在使用哪个).显示键空间; describe(键空间名称).注意:如果一个人正在使用"cqlsh",它需要在键空间或列家族中的任何混合或大写名称周围引用(好的,海报没有问这个但是如果C*是新的则是常见的用户错误) (3认同)
  • 不再工作了.使用cassandra 3.10 (3认同)

小智 8

要查看 Apache Cassandra NoSQL 数据库服务器上的所有键空间,请使用以下命令:

> DESCRIBE KEYSPACES 
Run Code Online (Sandbox Code Playgroud)


Let*_*SQL 6

一旦登录到 cqlsh 或 cassandra-cli。运行以下命令

  • 在 cqlsh 上

desc keyspaces;

或者

describe keyspaces;

或者

select * from system_schema.keyspaces;

  • 在 cassandra-cli 上

show keyspaces;


fac*_*tum 5

DESCRIBE命令是你的朋友。您可以描述一个键空间、列出键空间、一张表或列出键空间中的所有表、集群等等。您可以通过键入获得完整的想法

HELP DESCRIBE 在 cqlsh 中。

在 127.0.0.1:9042 连接到 mscluster。[cqlsh 5.0.1 | 卡桑德拉 3.8 | CQL 规范 3.4.2 | 本机协议 v4] 使用 HELP 寻求帮助。

cqlsh> 帮助描述

    DESCRIBE [cqlsh only]

    (DESC may be used as a shorthand.)

      Outputs information about the connected Cassandra cluster, or about
      the data objects stored in the cluster. Use in one of the following ways:...<omitted for brevity>
Run Code Online (Sandbox Code Playgroud)
  • DESCRIBE <your key space name>- 描述用于创建密钥空间的命令

cqlsh> DESCRIBE testkeyspace;

CREATE KEYSPACE testkeyspace WITH replication = {'class':'SimpleStrategy', 'replication_factor': '3'} AND Durable_writes = true;

  • DESCRIBE 键空间 - 列出所有键空间

cqlsh> 描述按键空间

system_schema system testkeyspace system_auth
system_distributed system_traces

  • DESCRIBE TABLES - 列出当前键空间中的所有表

cqlsh:system> 描述表;

available_ranges peers paxos
range_xfers batches compaction_history batchlog
local "IndexInfo" sstable_activity
size_estimates hints views_builds_in_progress peer_events
built_views

  • DESCRIBEyour table name或 DESCRIBE TABLE your table name- 提供表的详细信息

cqlsh:system> DESCRIBE TABLE 批处理日志

CREATE TABLE system.batchlog ( id uuid PRIMARY KEY, data blob, version int,written_at timestamp ) WITH bloom_filter_fp_chance = 0.01 AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} AND comment = ' DEPRECATED batchlog条目' .... 为简洁起见省略


小智 5

  1. 登录 cqlsh

  2. 使用以下命令获取存在的键空间的名称/列表

         SELECT keyspace_name FROM system_schema.keyspaces;
    
    Run Code Online (Sandbox Code Playgroud)