- 操作系统win10
- 时间2019年02月
- Nodejs版本:node v8.9.3
- Cassandra版本:cassandra-3.11.3
- 参考网址1
- 官网下载Cassandra压缩包
- 解压,并配置环境变量:
|操作|变量名|变量值|
|:---:|:---|:---|
|新建|CASSANDRA_HOME|解压路径|
|增加|PATH|解压路径\bin;|
npm install cassandra-driver -g
-g参数表示全局安装,这样在哪都能用了
C:\Users\wahaha>cassandra
select
包含一份日志配置,可以根据不同的日志级别输出成文件
/** * Connect loacal cassandra database. * Output the log as a file '*.log'. */ const cassandra = require('cassandra-driver'); var PlainTextAuthProvider = cassandra.auth.PlainTextAuthProvider; // config log const log4js = require('log4js'); log4js.configure({ appenders: { out: { type: 'console' }, select_info: { type: 'file', category: 'select_info', filename: './logs/select_info.log' }, select_error: { type: 'file', category: 'select_error', filename: './logs/select_error.log' } }, categories: { default: { appenders: ['out'], level: 'info' }, select_info: { appenders: ['select_info'], level: 'info' }, select_error: { appenders: ['select_error'], level: 'error' }, } }); const logger_info = log4js.getLogger('select_info'); const logger_error = log4js.getLogger('select_error'); // connect config const client = new cassandra.Client({ // 如果是远程数据库,则将IP和账号密码进行相应的更换 contactPoints: ['127.0.0.1'], authProvider: new PlainTextAuthProvider('cassandra', 'cassandra'), localDataCenter: 'datacenter1' }); const query1 = 'select * from test.user;'; const query1 = 'describe keyspaces;'; client.execute(query1, function (err, res) { if (err) { logger_error.error(err); }; try { client.shutdown(); var str_date = new Date().toLocaleString(); for (i = 0; i < res.rowLength; i++) { console.log(res.rows[i]); }; console.log('select %d successed at time %s', res.rowLength, str_date); logger_info.info('select %d successed at time %s', res.rowLength, str_date); } catch (error) { console.log(error); logger_error.error(error); }; });
insert
包含一份日志配置,可以根据不同的日志级别输出成文件
/** * Connect loacal cassandra database and insert data. * Output the log as a file '*.log'. */ const cassandra = require('cassandra-driver'); var PlainTextAuthProvider = cassandra.auth.PlainTextAuthProvider; // config log const log4js = require('log4js'); log4js.configure({ appenders: { out: { type: 'console' }, select_info: { type: 'file', category: 'select_info', filename: './logs/select_info.log' }, select_error: { type: 'file', category: 'select_error', filename: './logs/select_error.log' } }, categories: { default: { appenders: ['out'], level: 'info' }, select_info: { appenders: ['select_info'], level: 'info' }, select_error: { appenders: ['select_error'], level: 'error' }, } }); const logger_info = log4js.getLogger('select_info'); const logger_error = log4js.getLogger('select_error'); // connect const client = new cassandra.Client({ // 如果是远程数据库,则将IP和账号密码进行相应的更换 contactPoints: ['127.0.0.1'], authProvider: new PlainTextAuthProvider('cassandra', 'cassandra'), localDataCenter: 'datacenter1' }); const query1 = 'insert into test.user (name, age, email) values (?, ?, ?);'; const params1 = ['zzz', 22, 'zzz@22.com']; client.execute(query1, params1, { prepare: true }, function (err, result) { if (err) { logger_error.error(err); }; try { client.shutdown(); var str_date = new Date().toLocaleString(); logger_info.info('insert success at time %s', str_date); } catch (error) { logger_error.error(error); } });