为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
- 【TiDB 版本】:tidb 4.0.0
- 【问题描述】:一个单节点部署的集群,部署时,没有开始binlog,扩容pump、drainer,并开起binlog后,发现有些库的表无法通过where条件筛选出来。
过程描述:
1、一个测试的单节点集群,使用tiup部署4.0.0。
2、默认没有开始binlog,所以想测试开启binlog。扩容的yaml如下:
server_configs:
tidb:
binlog.enable: true
binlog.ignore-error: true
pump_servers:
- host: 10.4.0.32
ssh_port: 22
port: 8250
deploy_dir: “/data/tidb-deploy/pump-8249”
data_dir: “/data/tidb-data/pump-8249”
config:
gc: 14
drainer_servers: - host: 10.4.0.32
ssh_port: 22
port: 8249
data_dir: “/data/tidb-data/drainer-8249”
commit_ts: -1
deploy_dir: “/data/tidb-deploy/drainer-8249”
config:
syncer.db-type: “file”
syncer.to.dir: “test.sql”
arch: amd64
os: linux
3、扩容后,发现有个库的表(如包含有A、B字段),where无法通过A筛选出现,但可以通过B筛选出来。
4、怀疑是索引出了问题,就把该表与A相关的索引删除。删除后,where就可以通过A筛选出来了。
请问做扩容pump、drainer,开启binlog的操作会引起索引的数据丢失吗?