You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python连接ClickHouse数据库报错210,请求技术协助

排查ClickHouse连接错误码210的解决方案

错误码210对应ClickHouse的NETWORK_ERROR,核心是客户端无法与ClickHouse服务建立有效连接,以下是针对性排查步骤:

1. 确认ClickHouse服务状态

  • 本地环境执行命令检查服务是否运行:
    # Linux系统
    sudo systemctl status clickhouse-server
    # Windows命令提示符
    sc query clickhouse-server
    
  • 若服务未启动,先启动服务:
    # Linux
    sudo systemctl start clickhouse-server
    # Windows
    sc start clickhouse-server
    

2. 修正端口配置(高频误区)

clickhouse-driver默认使用9000端口(TCP协议),而非代码中写的8123(HTTP端口),这是最常见的错误点:

  • 修改代码端口参数为9000再测试:
    port = 9000  # 适配clickhouse-driver的默认TCP端口
    
  • 也可查看ClickHouse配置文件/etc/clickhouse-server/config.xml,确认TCP端口是否被自定义修改。

3. 排查防火墙/安全组拦截

  • 本地防火墙可能阻断了端口访问,临时关闭测试(测试后恢复):
    # Linux
    sudo systemctl stop firewalld
    # Windows
    netsh advfirewall set allprofiles state off
    
  • 若连接远程服务器,需确认云服务商安全组已开放对应端口。

4. 验证连接参数准确性

  • 检查user:默认用户为default,不要留空;若自定义了用户需填对应名称
  • 检查password:若ClickHouse设置了密码需填写,未设置则留空
  • 检查database:确认myBase数据库存在,可通过ClickHouse客户端执行SHOW DATABASES;验证

5. 测试基础网络连通性

用命令测试端口是否可达:

telnet localhost 9000
# 或用nc命令
nc -zv localhost 9000

若连接失败,回到服务状态、防火墙步骤重新排查。

修改后的测试代码

from clickhouse_driver import Client

# 设置ClickHouse数据库连接参数
host = 'localhost'
port = 9000  # 改用TCP端口
user = 'default'  # 默认用户名,按需修改
password = ''  # 有密码则填写实际值
database = 'myBase'

# 创建ClickHouse客户端
client = Client(host=host, port=port, user=user, password=password, database=database)

# 示例查询
query = 'SELECT * FROM data LIMIT 10'
result = client.execute(query)

# 输出结果
for row in result:
    print(row)

内容的提问来源于stack exchange,提问作者Vladimir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 01:14:55