
# 怎么删除ClickHouse存算一体集群ZooKeeper节点的副本表？
#### 问题现象
连接ClickHouse集群后并创建表，删除表后出现ZooKeeper节点未删除干净现象。
图1结果显示图   
![](https://support.huaweicloud.com/cloudtable_faq/zh-cn_image_0000002355781710.png "点击放大")
#### 原因分析
由于创建表的命令中携带了ON CLUSTER default_cluster，所以会在每一个节点上都创建一个本地表。
#### 处理方法
删除其他节点上的表以及存放的数据，可解决此问题。
1. 创建数据库。 
   ```
   create database demo ON CLUSTER default_cluster;
   ```
   
   
2. 使用数据库，在新建的数据库中创建表。 
   ```
   use demo;
   ```
   创建表test。
   ```
   CREATE TABLE demo.test ON CLUSTER default_cluster(`EventDate` DateTime, `id` UInt64)ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/default/test', '{replica}') PARTITION BY toYYYYMM(EventDate) ORDER BY id;
   ```
   
   
3. 删除表。 
   ```
   drop table test SYNC;
   ```
   
   
4. 再次创建同名表，出现以下现象。 
   ```
   ┌─host──────────┬─port─┬─status─┬─error──────────────────────────────────────────────────────────────────────────────────────────────┬─num_hosts_remaining─┬─num_hosts_active─┐
   │ 192.168.2.185 │ 9000 │     57 │ Code: 57. DB::Exception: Table demo.test already exists. (TABLE_ALREADY_EXISTS) (version 22.3.2.1) │                   1 │                1 │
   └───────────────┴──────┴────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┴─────────────────────┴──────────────────┘
   ┌─host─────────┬─port─┬─status─┬─error─┬─num_hosts_remaining─┬─num_hosts_active─┐
   │ 192.168.2.16 │ 9000 │      0 │       │                   0 │                0 │
   └──────────────┴──────┴────────┴───────┴─────────────────────┴──────────────────┘
   ```
   
   
5. 方法一：用以下删除命令会删除每个节点上的表以及存放的相关数据。 
   ```
   drop table test ON CLUSTER default_cluster SYNC;
   ```
   创建同名表，创建成功。
   
   
6. 方法二：进入其他节点删除表。 
   ```
   drop table test SYNC;
   ```
   
   
 
