大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。
本文主要介绍了MySQL出现Specified key was too long; max key length is 3072 bytes,希望能对学习MySQL的同学们有所帮助。
文章目录
- 1. 问题描述
- 2. 原因分析
- 3. 解决方案
1. 问题描述
这几天在处理线上一个慢查询的问题,需要对一个varchar
类型的字段添加索引,在线上执行添加索引语句之后,MySQL出现了报错,报错内容为Specified key was too long; max key length is 3072 bytes
,简单来说就是要添加的索引的长度超过最大限制了,最大支持的长度是3072bytes
。具体报错信息如下所示:
在经过了亲身的实践后,终于找到了解决问题的方案,最终将逐步的操作过程总结如下。希望能对遇到同样bug的同学有所帮助。