TiDB错误码与故障排除
错误码
TiDB 兼容 MySQL 的错误码,在大多数情况下,返回和 MySQL 一样的错误码。另外还有一些特有的错误码:
错误码 | 说明 |
---|---|
8001 | 请求使用的内存超过 TiDB 内存使用的阈值限制 |
8002 |
带有 SELECT FOR UPDATE 语句的事务,在遇到写入冲突时,为保证一致性无法进行重试,事务将进行回滚并返回该错误
|
8003 |
ADMIN CHECK TABLE 命令在遇到行数据跟索引不一致的时候返回该错误
|
8004 | 单个事务过大 |
8005 | 事务在 TiDB 中遇到了写入冲突,原因及解决方法请参考这里 |
9001 | 请求 PD 超时,请检查 PD Server 状态/监控/日志以及 TiDB Server 与 PD Server 之间的网络 |
9002 | 请求 TiKV 超时,请检查 TiKV Server 状态/监控/日志以及 TiDB Server 与 TiKV Server 之间的网络 |
9003 | TiKV 操作繁忙,一般出现在数据库负载比较高时,请检查 TiKV Server 状态/监控/日志 |
9004 | 当数据库上承载的业务存在大量的事务冲突时,会遇到这种错误,请检查业务代码 |
9005 | 某个 Raft Group 不可用,如副本数目不足,出现在 TiKV 比较繁忙或者是 TiKV 节点停机的时候,请检查 TiKV Server 状态/监控/日志 |
9006 | GC Life Time 间隔时间过短,长事务本应读到的数据可能被清理了,应增加 GC Life Time |
9007 | 事务在 TiKV 中遇到了写入冲突,原因及解决方法请参考这里 |
故障排除
TiDB 自定义报错汇总
ERROR 8005 (HY000) : Write Conflict, txnStartTS is stale
可以检查 tidb_disable_txn_auto_retry
是否为 on。如是,将其设置为 off;如已经是 off,将 tidb_retry_limit
调大到不再发生该错误。
ERROR 9001 (HY000) : PD Server Timeout
请求 PD 超时,请检查 PD Server 状态/监控/日志以及 TiDB Server 与 PD Server 之间的网络。
ERROR 9002 (HY000) : TiKV Server Timeout
请求 TiKV 超时,请检查 TiKV Server 状态/监控/日志以及 TiDB Server 与 TiKV Server 之间的网络。
ERROR 9003 (HY000) : TiKV Server is Busy
TiKV 操作繁忙,一般出现在数据库负载比较高时,请检查 TiKV Server 状态/监控/日志。
ERROR 9004 (HY000) : Resolve Lock Timeout
清理锁超时,当数据库上承载的业务存在大量的事务冲突时,会遇到这种错误,请检查业务代码是否有锁争用。
ERROR 9005 (HY000) : Region is unavailable
访问的 Region 不可用,某个 Raft Group 不可用,如副本数目不足,出现在 TiKV 比较繁忙或者是 TiKV 节点停机的时候,请检查 TiKV Server 状态/监控/日志。
ERROR 9006 (HY000) : GC life time is shorter than transaction duration
GC Life Time
间隔时间过短,长事务本应读到的数据可能被清理了,可使用如下命令增加 GC Life Time
:
update mysql.tidb set variable_value='30m' where variable_name='tikv_gc_life_time';
其中 30m 代表仅清理 30 分钟前的数据,这可能会额外占用一定的存储空间。
ERROR 9007 (HY000) : Write Conflict
可以检查 tidb_disable_txn_auto_retry
是否为 on。如是,将其设置为 off;如已经是 off,将 tidb_retry_limit
调大到不再发生该错误。
MySQL 原生报错汇总
ERROR 2013 (HY000): Lost connection to MySQL server during query 问题的排查方法?
- log 中是否有 panic
- dmesg 中是否有 oom,命令:
dmesg -T | grep -i oom
- 长时间没有访问,也会收到这个报错,一般是 tcp 超时导致的,tcp 长时间不用, 会被操作系统 kill。
ERROR 1105 (HY000): other error: unknown error Wire Error(InvalidEnumValue(4004)) 是什么意思?
这类问题一般是 TiDB 和 TiKV 版本不匹配,在升级过程尽量一起升级,避免版本 mismatch。
ERROR 1148 (42000): the used command is not allowed with this TiDB version 问题的处理方法?
这个问题是因为在执行 LOAD DATA LOCAL
语句的时候,MySQL 客户端不允许执行此语句(即 local_infile
选项为 0)。解决方法是在启动 MySQL 客户端时,用 –local-infile=1
选项。具体启动指令类似:mysql --local-infile=1 -u root -h 127.0.0.1 -P 4000
。有些 MySQL 客户端需要设置而有些不需要设置,原因是不同版本的 MySQL 客户端对 local-infile
的默认值不同。
ERROR 9001 (HY000): PD server timeout start timestamp may fall behind safe point
这个报错一般是 TiDB 访问 PD 出了问题,TiDB 后台有个 worker 会不断地从 PD 查询 safepoint,如果超过 100s 查不成功就会报这个错。一般是因为 PD 磁盘操作过忙、反应过慢,或者 TiDB 和 PD 之间的网络有问题。TiDB 常见错误码请参考错误码与故障排除。
TiDB 日志中的报错信息
EOF
当客户端或者 proxy 断开连接时,TiDB 不会立刻察觉连接已断开,而是等到开始往连接返回数据时,才发现连接已断开,此时日志会打印 EOF 错误。
TiDB错误码与故障排除相关推荐
- SAP SOAMANAGER报错原因与故障排除方法
一些刚刚接触到SAP Webservice的开发者由于对SAP Netweaver组件的不熟悉,往往在使用事物码SOAMANAGER进行webservice配置的时候,发现无法正常启动SOAMANAG ...
- shell 获取ora报错信息_频发:故障排除之又见 ORA-4031丨云和恩墨技术通讯
亲爱的读者朋友: 为了及时共享行业案例,通知共性问题,达成共享和提前预防,我们整理和编辑了<云和恩墨技术通讯>,通过对过去一段时间的知识回顾,故障归纳,以期提供有价值的信息供大家参考.同时 ...
- kuka机器人报电源管理报错_KUKA机器人出错提示和故障排除信息
广州子锐机器人技术有限公司:KUKA机器人出错提示和故障排除信息,提示窗口将显示各种类型的显示.它们既可以是不必确认的信息,也可以是必须予以确认的提示 一个提示可以由下列部分构成: 1.1 提示组 ...
- 在制品和成本故障排除常用脚本
摘自:在制品和成本故障排除常用脚本 - 王小航 - 博客园 (cnblogs.com) 1. 待定在制品物料事务处理? 这些脚本只是Oracle支持服务提供以故障排除为目的. 这些脚本已经过测试且照 ...
- 电脑出现错误信息的故障排除
1.出现TASKMON caused an invalid page fault in module KERNEL32.DLL (1)适用范围:Windows Me.Windows 98 (2)症状: ...
- IBM__P系列 小型机 故障定位 故障排除
第三章.故障定位.故障排除 根据我们在实际商用系统中碰到问题,我们总结出了以下几种常见故障及其定位方式和解决方法. 3.1硬件故障 硬件故障有很多种,对系统产生的影响也不一样,这里按其故障对系统的影响 ...
- MySQL 5.7 服务端 错误码 (机翻)
官方文档:https://dev.mysql.com/doc/mysql-errors/5.7/en/server-error-reference.html MySQL服务器将一些错误消息写入其错误日 ...
- teamviewer设备数量上限_智能控制设备连接故障排除
智能家居控制设备,物联网,设备连接中配对和不在线常见问题故障排除方法: 手机通过WIFI 是否可以正常上网,如果不能正常上网,先要解决这个问题,很多设备是需要通过互联网才可以正常接入工作的. 手机和智 ...
- 软件常见故障的现象、故障排除的方法
软件常见故障的现象: *计算机自检后无法初始化系统--这一般是由于系统启动相关的文件被破坏所致. *计算机的设备驱动程序安装不当造成设备运行不正常. *运行缓慢-系统由于长期运行产生了大量的垃圾文件. ...
- linux sql failed,Cacti SQL Failed! Error:’1062′故障排除
cacti日志报错: 05/25/2011 11:40:01 AM – SPINE: Poller[0] ERROR: SQL Failed! Error:'1062', Message:'Dupli ...
最新文章
- 零基础学习大数据开发需要多久能工作?
- linux epoll模型
- 2018年4月1日 蓝桥杯 C/C++B组答案 明码
- GNU (内部)make函数
- 前后端分手大师——MVVM 模式
- 函数 devm_kzalloc()
- .NET Core 开发之旅 (1. .NET Core R2安装教程及Hello示例)
- 美国三大股指周五收高 费城半导体指数逆势微跌0.33%
- mybatis核心数据结构详解——CacheKey
- 证明$A^TAX = A^Tb$有公共解
- 十年程序人生——转自黎活明
- Linux开机启动过程分析
- 【大二下复习】新视野大学英语(第三版)第四册读写教程答案 + 期末复习翻译的部分题目
- 阿里达摩院招聘 Research Intern
- 清橙A1210. 光棱坦克
- CoreDNS篇8-健康检查
- 【云原生分布式存储】成书心路历程
- mcinabox运行库下载_mcinabox下载-mcinabox运行库(启动器)官网最新版(附使用教程)v0.1.0-完全实况...
- 所见不可得?NO!500px 图片保存攻略
- Java实现论文查重系统
热门文章
- 反编译 APK 的基本步骤
- 在VirtualBox中安装WindowsXP
- 真鱼游来游去动态壁纸_超级漂亮的鱼池动态壁纸(Fish Pond)1.54中文完整版
- 软件学报 期刊论文 排版格式要求 2021最新
- Windows7WithSP1/TeamFoundationServer2012update4/SQLServer2012
- Spring 源码(四)解析配置类
- SQL Server分布式事务配置(MSDTC)(远程数据库更新)
- OSChina 周六乱弹 ——程序员想让对象一辈子跟你的秘籍
- The Productive Programmer 读书笔记
- 【回归分析】logistic regresssion中的拟合优度检验(goodness-of-fit test)