Clickhouse常见异常

clickhouse 异常

  • 报错: Code: 16. DB::Exception: Received from localhost:9000. DB::Exception: There is no physical column ver(表字段) in table…

    处理方案: 检查metadata下sql文件数据是否正常

  • 报错: Cannot create table from metadata file /var/lib/clickhouse/metadata/db_name//tab_name.sql, error

    处理方案: 检查metadata下sql文件数据是否正常

  • 报错: Code: 210. DB::NetException: Connection refused (localhost:9000)

  • 处理方案:

    1. 检查clickhouse服务是否开启
    2. 检查防火墙是否关闭(或9000端口是否正常访问)
    3. 检查配置文件是否正常
    4. 检查zk是否正常

操作

clickhouse sit环境进行DDL操作:

ALTER TABLE tab_name DROP COLUMN ver;

操作以后, select * from … 出现如下异常:

Code: 16. DB::Exception: Received from localhost:9000. DB::Exception: There is no physical column ver(表字段) in table…

排查

  • 查看表结构,显示字段已经删除
DESC tab_name;
-- 或者
SHOW CREATE TABLE tab_name;
  • 查看数据,显示字段数据已经删除
cd /var/lib/clickhouse/data/db_name/tab_name && ls
## 找一个数据目录,显示已经无 ver 字段

为了解决问题,重新创建了另外一张同字段的业务表,原表没有删除。不幸的事发生了,公司电器功率高,sit机房断电,服务挂了。来电启动服务器,一直启动不了,就去追踪日志

# 启动服务失败
service clickhouse-server start
# 查看服务有异常
sudo -u clickhouse clickhouse-server --config-file=/etc/clickhouse-server/config.xml
# 日志查看
tail -300f /var/log/clickhouse-server/clickhouse-server.log
tail -300f /var/log/clickhouse-server/clickhouse-server.err.log

2021.04.30 13:01:21.471806 [ 1 ] {} Application: Caught exception while loading metadata: Code: 132, e.displayText() = DB::Exception: Cannot create table from metadata file /var/lib/clickhouse/metadata/db_name//tab_name.sql, error: DB::Exception: Version column ver does not exist in table declaration., stack trace: 0. 0x5575ae975640 StackTrace::StackTrace() /usr/bin/clickhouse

大致意思是说,metadata有ver字段记录,而表及数据目录无此字段
metadata/db_name/tab_name.sql含ver字段如下:
在这里插入图片描述

解决方案

  1. 删除/var/lib/clickhouse/metadata/db_name/下的tab_name.sql;
rm -rf /var/lib/clickhouse/metadata/db_name/tab_name.sql

在这里插入图片描述

  1. 删除/var/lib/clickhouse/data/db_name/tab_name数据;
rm -rf /var/lib/clickhouse/data/db_name/tab_name

在这里插入图片描述
3. 启动服务

# 启动服务正常
service clickhouse-server start
# 查看状态,已经启动
service clickhouse-server status
# 检验正常
clickhouse-client -m
# 库检查正常
show databases;

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值