我尝试使用node-cassandra-cql与cassandra(1.1.12)进行通信,但是当我尝试一个简单的连接时:
node connect.js
connect.js source:
var cql = require('node-cassandra-cql');
var client = new cql.Client({hosts: ['localhost'], keyspace: 'LIBRE'});
client.execute('SELECT * FROM Persons', [],
function(err, result) {
if (err) {
console.log('execute failed', err);
} else {
for (var i = 0; i < result.rows.length; i++) {
//console.log('id=' + result.rows[i].get('id') + ' test_value=' + result.rows[i].get('test_value'));
console.log(result.rows[i].get('Name'));
}
process.exit(0);
}
}
);
它返回错误:
执行失败{[PoolConnectionError] name:'PoolConnectionError', info:'在尝试连接池时表示错误,所有连接都失败。', individualErrors: [{[错误:连接ECONNREFUSED] 代码:'ECONNREFUSED', 错误:'ECONNREFUSED', 系统调用:'connect'}], stack:'undefined \ n(事件循环)\ n在Client.execute(/var/www/clients/client1/web1/web/node_modules/node-cassandra-cql/index.js:189:9),n at Object 。 (/var/www/clients/client1/web1/web/connect.js:6:8)nn在Module._compile(module.js:456:26)\ n在Object.Module._extensions..js(模块) .js:474:10)\ n在Module.load(module.js:356:32)\ n在Function.Module._load(module.js:312:12)\ n在Function.Module.runMain(模块。 js:497:10)\ n启动时(node.js:119:16)\ n在node.js:906:3', 查询:'SELECT * FROM Persons'}
我尝试指定一个端口(9160),但这是同一个问题。
感谢您的帮助
西蒙
答案 0 :(得分:0)
如description中所述,node-cassandra-cql(以及使用Cassandra二进制协议的其他驱动程序)仅适用于Cassandra 1.2或更高版本。