如何查看titandb里的Blob内容都是属于那些表的

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
正常业务DDL变更(只有创建索引)时报错,问题现象跟这个 PD扩缩容成功后,执行create index语句报错ERROR 1105 (HY000): DDL job rollback, error报错一样,经和使用方沟通后,在业务低谷时段执行reload操作
执行tiup cluster reload cluster_name时报

Error: init config failed: xxx.xxx.xxx.xxx:20160: executor.ssh.execute_failed: Failed to execute command over SSH for 'tidb@xxx.xxx.xxx.xxx:22' {ssh_stderr: /etc/profile.d/history.sh: line 1: HISTSIZE: readonly variable
/etc/profile.d/history.sh: line 2: HISTTIMEFORMAT: readonly variable
invalid configuration: check: titandb-data-dir-empty; err: "data-dir.empty.check: the number of file with extension blob in directory /work/tidb-data/tikv-20160/db/titandb is non-zero, got 1587, expect 0."; hint: You have disabled titan when its data directory is not empty. To properly shutdown titan, please enter fallback blob-run-mode and wait till titandb files are all safely ingested.
, ssh_stdout: , ssh_command: export LANG=C; PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin /work/tidb-deploy/tikv-20160/bin/tikv-server --config-check --config=/work/tidb-deploy/tikv-20160/conf/tikv.toml --pd "" --data-dir "/work/tidb-data/tikv-20160"}, cause: Process exited with status 1: check config failed

这个节点之前开启过[rocksdb.titan] enabled = true,后来发现磁盘空间不均衡(TiKV存储目录不均衡)然后就把titan关闭了,并重启了这个tikv节点,看监控也在减少,但是很慢,如何查看这些blob数据都属于哪些表,针对单个表做compact操作

看报错感觉你并没有正确关闭 Titan:
https://docs.pingcap.com/zh/tidb/stable/titan-configuration#数据迁移
https://docs.pingcap.com/zh/tidb/stable/titan-configuration#关闭-titan

1 个赞

标记一下

新的数据已经不写titan了,已存在的数据也在慢慢等gc处理,有两表上有ttl的,半年后差不多就全部gc完了。现在就是嫌正常gc有点慢,想手工来执行某个表的compact

mysql.tidb 表中 gc 是否正常推进, 正常的话 gc 是没问题的。

compact 的话,其实你可以手动全量 compact。专栏 - TiDB MVCC 问题处理 | TiDB 社区

2 个赞
EXPLAIN ANALYZE SELECT COUNT(1) FROM table_name;

这个结果,那个指标代表需要compact的行数多

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。