【问题标题】:How to get Cassandra database dump with data如何使用数据获取 Cassandra 数据库转储
【发布时间】:2026-01-01 07:15:01
【问题描述】:
我需要从远程 Cassandra 数据库中获取转储(包含数据)。我能够通过以下命令获取数据库架构。如何获取键空间中的所有数据?
我使用的是 Cassandra 1.1.9
echo -e "连接 localhost/9260;\r\n 使用 PWC_Keyspace;\r\n 显示架构;\n" | bin/cassandra-cli -h localhost -port 9260 > dilshan.cdl
【问题讨论】:
标签:
cassandra
database-dump
nosql
【解决方案1】:
对于 Cassandra 1.1.9,我认为您无法使用 copy-to 命令访问 cqlsh,因此您会遇到 2 个选项。
1) 使用 sstable2json 从磁盘上的数据文件 (sstables) 导出数据,或
2) 编写一个程序来遍历每一行并将其复制/序列化为您认为更易于使用的格式。
您可以使用更新的 cqlsh(例如,从 2.0 开始,它仍然使用 thrift 而不是本机接口),并将其指向您的 1.1.9 服务器并使用“复制到”将每个表导出到一个.csv。但是,cqlsh for 2.0 中的 COPY 命令不使用分页,而 cassandra 1.1.19 不支持分页,因此很有可能它会超时并失败。