TIDB备份导致网站异常

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】
Release Version: 4.0.8
Edition: Community
Git Commit Hash: 83091173e960e5a0f5f417e921a0801d2f6635ae
Git Commit Branch: heads/refs/tags/v4.0.8
UTC Build Time: 2020-10-30 08:40:33
Rust Version: rustc 1.42.0-nightly (0de96d37f 2019-12-19)
Enable Features: jemalloc mem-profiling portable sse protobuf-codec
Profile: dist_release
【问题描述】

网页反馈很慢
排查中发现备份dumping还在执行。
上去查processlist ,发现有三条SQL执行了快6个小时

SELECT * FROM `xxx`.`xxx` ORDER BY _tidb_rowid; SELECT * FROM `xxx`.`xxxx` ORDER BY _tidb_rowid; SELECT * FROM `xxxx`.`xxxx` ORDER BY _tidb_rowid;

后面程序报错日志方面有一些信息、分别是

General error: 8027 Information schema is out of date: schema failed to update in 1 lease, please make sure TiDB can connect to TiKV 

General error: 1105 tikv aborts txn: Txn(Mvcc(PessimisticLockNotFound { start_ts: TimeStamp(425152128067829769), key:

kill掉备份之后,三条SQL消失,但网页慢问题还存在。
从监控上看,响应时间也很长
于是重启一台tikv 节点后,故障恢复
想问一下如果是因为备份引起的,我kill掉之后为什么没有回复呢? 以后遇到这种问题的话一定要重启TIKV节点吗?


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

用的是KILL TIDB 进程号 的方式kill掉的么

对的,kill -9 dumping的方式,

应该用kill tidb -9才行吧

https://docs.pingcap.com/zh/tidb/stable/sql-statement-kill#kill-tidb

我是Kill dumping 进程,不是kill TIDB里面的SQL连接

哦,那是我理解错了

在逻辑上,备份不会导致上面刚开始提到的2个报错的,不过猜测由于备份导致的服务器负载较高,影响到了其他。
1、建议备份的 tidb-server 单独部署
2、问题2 估计也是负载没有降下来导致,不过这个建议咱们导出一份 tikv-detail 和 node-exporter 的监控来看一下(监控导出方式:https://asktug.com/t/topic/37248)(记得提供杀掉会话的时间点)

1 个赞