문제

How to drop all keyspace in cassandra, I have requirement where I have to delete all keyspaces created by some test scripts.

Thanks

도움이 되었습니까?

해결책

Are you looking for a method other than drop keyspace?

Okay based on your clarification...

I would say the best way to reset cassandra would be to delete the contents of the <data dir>/data/* <data dir>/commitlog/* <data dir>/saved_caches/*

and then restart the services on the nodes beginning with the seed node and continuing with a 2 minute gap between each node start. That will take the nodes back to a clean state with respect to the data but leave the customizations in cassandra.yaml intact. This would also reset any changes made to the "system" keyspaces at the cqlsh level such as changing a replication factor.

다른 팁

I use this script below to drop all keyspaces:

keyspaces=$(echo desc keyspaces | cqlsh | xargs -n1 echo | grep -v ^system)
for ks in $keyspaces; do
    echo Dropping $ks
    echo "drop keyspace $ks;" | cqlsh
done
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top