问题描述
在我的 Windows 机器上,我有 CQLSH 工作并使用 .cert 文件 现在我开始使用 dsbulk,但无法通过命令行知道在哪里可以找到我的证书。 我这里有一个证书文件:C:\myfolder\mycert.cer
这是我的命令行示例: dsbulk count --ssl -u "myusername" -p "mypassword" -h "123.12.123.12" -k "mykeyspace" -query "select count(*) from mytable;"
错误信息: 操作失败:需要多头或空头选项,得到:'myusername'
我怀疑我需要修改我的命令参数以引用证书文件。 任何建议将不胜感激!
解决方法
@约翰·奥沙利文
根据Alex上面分享的文档思路,需要给dsbulk命令喂一个文件:
dsbulk {
connector.name = "csv"
connector.csv.delimiter = "|"
schema.keyspace = "myKeyspace"
schema.table = "myTable"
schema.mapping = "0=name,1=age,2=email"
}
datastax-java-driver {
advanced {
ssl-engine-factory {
keystore-password = "cassandra"
keystore-path = "/Users/myaccount/tmp/ssl/keystore.node0"
class = DefaultSslEngineFactory
truststore-password = "dse#r0cks!"
truststore-path = "/Users/myaccount/tmp/ssl/truststore.node0"
}
}
}
然后命令行引用文件:
dsbulk load -f my-application.conf -url file1.csv -k ks1 -t table1
您需要参考的具体页面是:
https://docs.datastax.com/en/dsbulk/doc/dsbulk/dsbulkUseSsl.html