Le problème que j'ai est que je veux exécuter la commande suivante (et je ne peux pas):
cqlsh < cql_directory/cql_create_stuff.cql
Parce que je ne me suis pas connecté à cqlsh.
Alors je me suis connecté:
cqlsh -u 'my_username' -p 'my_super_secret_password'
et maintenant j'ai essayé de faire la commande dans cqlsh Shell mais cela répond simplement avec une erreur de syntaxe.
En gros, comment me connecter à cqlsh et exécuter un script CQL externe dans mon système de fichiers?
Utilisez le SOURCE
http://www.datastax.com/documentation/cql/3.1/cql/cql_reference/source_r.html
Vous pouvez utiliser -f
option aussi pour exécuter des commandes depuis un fichier
http://www.datastax.com/documentation/cql/3.1/cql/cql_reference/cqlsh.html
En supposant que le chemin du fichier contenant les commandes CQL soit /mydir/myfile.cql
, il y a deux façons:
Si vous n'êtes pas connecté à cqlsh:
cqlsh -u 'my_username' -p 'my_password' -f /mydir/myfile.cql
Si vous êtes connecté à cqlsh:
SOURCE '/mydir/myfile.cql'
Notez les guillemets simples. La notation abrégée pour $HOME
(par exemple, '~/mydir/myfile.cql'
) est également supporté.
Les deux méthodes fonctionnent également avec des chemins relatifs (vers le répertoire actuel).
Ceci est pour le système Windows
supposons que vous cassandra dir est C:\Program Files\DataStax-DDC\Apache-cassandra\bin
Supposons un répertoire dans lequel votre fichier .cql OR le fichier de requête cql est D:\ril\s\developement\new one\Excel après l'analyse\Women catalogue template.cql
Suivez maintenant les étapes ci-dessous pour importer un fichier cql
Et c'est fait.
Note importante:
En supposant que votre nom de fichier soit "tables.cql" et qu'il soit placé comme suit: /files/tables.cql
;
cqlsh -f /files/tables.cql
En supposant que le nom du conteneur Docker soit celui qui s'exécute Cassandra est "cas" (n'oubliez pas que vous pouvez également utiliser l'identifiant de hachage du conteneur Docker s'il n'y a pas de nom qui lui est assigné);
docker exec -it cas cqlsh -f /files/tables.cql
Comme indiqué dans d'autres réponses, -u
et -p
_ options peuvent être ajoutées pour utiliser les combinaisons nom d'utilisateur/mot de passe.