web-dev-qa-db-fra.com

Existe-t-il un équivalent clair de 'show keyspaces' dans cqlsh 2?

Quelle commande cqlsh puis-je utiliser pour voir rapidement les espaces clés dans un cluster? cqlsh ne fournit pas show keyspaces et describe cluster n'est pas aussi concis que je le souhaite.


Je travaille en utilisant les spécifications suivantes:

cqlsh 2.2.0, Cassandra 1.1.10, spécification CQL 2.0.0, protocole Thrift 19.33.0

47
Crowie

Très simple. Entrez simplement cette commande dans votre shell cqlsh et profitez

 select * from system.schema_keyspaces;

En C * 3.x, nous pouvons simplement utiliser

 describe keyspaces
102
abhi

Essayez ceci:

describe keyspaces


Cependant, vous pouvez avoir besoin des spécifications des éléments suivants (plutôt que ceux mentionnés par vous-même Crowie )

[cqlsh 4.1.1 | Cassandra 2.0.6 | CQL spec 3.1.1 | Thrift protocol 19.39.0]

46
Peter Kipping
cqlsh> select * from system_schema.keyspaces;

 keyspace_name      | durable_writes | replication
--------------------+----------------+-------------------------------------------------------------------------------------
        system_auth |           True | {'class': 'org.Apache.cassandra.locator.SimpleStrategy', 'replication_factor': '1'}
      system_schema |           True |                             {'class': 'org.Apache.cassandra.locator.LocalStrategy'}
 system_distributed |           True | {'class': 'org.Apache.cassandra.locator.SimpleStrategy', 'replication_factor': '3'}
             system |           True |                             {'class': 'org.Apache.cassandra.locator.LocalStrategy'}
      system_traces |           True | {'class': 'org.Apache.cassandra.locator.SimpleStrategy', 'replication_factor': '2'}
10
Gabriel Wu

La manière correcte avec la série C * 3.x est:

List<KeyspaceMetadata> keyspaces = Cluster.getMetadata().getKeyspaces()

Utilisez ensuite getName() sur les instances KeyspaceMetadata.

4
BSB