【问题标题】:Can't query clickhouse db using nodejs无法使用nodejs查询clickhouse db
【发布时间】:2020-01-04 06:42:55
【问题描述】:

我在查询 clickhouse db 时遇到错误。”

const { ClickHouse } = require('clickhouse');
const clickhouse = new ClickHouse({
  debug: false,
  basicAuth: {
    username: 'username',
    password: 'password',
  },
});
clickhouse.query('SHOW DATABASES;').exec((err, rows) => {
  console.log(err);
  console.log(rows);
});

--> ==== 输出 =====

[nodemon] 起始节点 index.js 错误:getaddrinfo ENOTFOUND http 在 GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:60:26) { 错误号:'ENOTFOUND', 代码:'ENOTFOUND', 系统调用:'getaddrinfo', 主机名:'http' } 未定义

【问题讨论】:

  • 您在创建ClickHouse 的实例时忘记了urlport 属性

标签: node.js clickhouse


【解决方案1】:

您应该指定托管 clickhouse 的主机和端口

const { ClickHouse } = require('clickhouse');
const clickhouse = new ClickHouse(url: process.env.DATABASE_HOST,
    port: parseInt(process.env.DATABASE_PORT),
    debug: false,
    basicAuth: {
        username: "username",
        password: "password"
    },
    isUseGzip: false,
    config: {
        session_timeout: 60,
        output_format_json_quote_64bit_integers: 0,
        enable_http_compression: 0
    });
clickhouse.query('SHOW DATABASES;').exec((err, rows) => {
console.log(err);
console.log(rows);
})

【讨论】:

    猜你喜欢
    • 2021-03-26
    • 2021-05-06
    • 1970-01-01
    • 2012-07-07
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2017-01-11
    • 2020-09-16
    相关资源
    最近更新 更多