[英]How to drop all Tables and UDTs from a Cassandra Keyspace?
有沒有辦法清除 Cassandra 中的鍵空間? 我們不能直接刪除鍵空間,因為我們無權創建或刪除鍵空間。 先感謝您!
PS 我們使用的是 Cassandra 3.7。
您可以執行類似 cqlsh -e 'use ;describe tables' 之類的操作。 這將返回一個表列表,您可以使用這些表創建查詢以刪除這些表。 與udt的類似。
通過cqlsh
實現它非常簡單,並且比嘗試使用自定義代碼實現一些東西要好 - 編程模式更改存在細微差別,最好避免:
刪除所有內容的完整腳本在這里:
cqlsh -e 'describe keyspace test;' > ks.cql
rm -f drop-all.cql
grep -e '^CREATE MATERIALIZED VIEW' ks.cql|sed -e 's|^CREATE MATERIALIZED VIEW \(.*\) ($|DROP MATERIALIZED VIEW \1;|' >> drop-all.cql
grep -e '^CREATE INDEX' ks.cql|sed -e 's|^CREATE INDEX \(.*\) ($|DROP INDEX \1;|' >> drop-all.cql
grep -e '^CREATE TABLE' ks.cql|sed -e 's|^CREATE TABLE \(.*\) ($|DROP TABLE \1;|' >> drop-all.cql
grep -e '^CREATE TYPE' ks.cql|sed -e 's|^CREATE TYPE \(.*\) ($|DROP TYPE \1;|' >> drop-all.cql
cqlsh -f drop-all.cql
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.