我需要从远程 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 数据库中获取转储(带有数据)。我能够通过以下命令获取数据库模式。如何获取键空间中的所有数据?
我正在使用 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 1.1.9,我不相信您可以使用 copy-to 命令访问 cqlsh,因此您会遇到 2 个选项。
1) 使用 sstable2json 从磁盘上的数据文件 (sstables) 导出数据,或 2) 编写一个程序来迭代每一行并将其复制/序列化为您认为更易于使用的格式。
您可以使用更新的 cqlsh(例如,从 2.0 开始,它仍然使用 thrift 而不是本机接口),并将其指向您的 1.1.9 服务器并使用“复制到”将每个表导出到 csv。但是,cqlsh 2.0 中的 COPY 命令不使用分页,而 cassandra 1.1.19 不支持分页,因此很有可能它只是超时并失败。