From 2fd86876249c254ff685c8dedf8846727fa3b88e Mon Sep 17 00:00:00 2001 From: zengqiao Date: Fri, 2 Sep 2022 14:55:02 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/user_guide/faq.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/user_guide/faq.md b/docs/user_guide/faq.md index 3062cfa2..60620f73 100644 --- a/docs/user_guide/faq.md +++ b/docs/user_guide/faq.md @@ -109,3 +109,21 @@ SECURITY.TRICK_USERS 设置完成上面两步之后,就可以直接调用需要登录的接口了。 但是还有一点需要注意,绕过的用户仅能调用他有权限的接口,比如一个普通用户,那么他就只能调用普通的接口,不能去调用运维人员的接口。 + +## 8.8、Specified key was too long; max key length is 767 bytes + +**原因:**不同版本的InoDB引擎,参数‘innodb_large_prefix’默认值不同,即在5.6默认值为OFF,5.7默认值为ON。 + +对于引擎为InnoDB,innodb_large_prefix=OFF,且行格式为Antelope即支持REDUNDANT或COMPACT时,索引键前缀长度最大为 767 字节。innodb_large_prefix=ON,且行格式为Barracuda即支持DYNAMIC或COMPRESSED时,索引键前缀长度最大为3072字节。 + +**解决方案:** + +- 减少varchar字符大小低于767/4=191。 +- 将字符集改为latin1(一个字符=一个字节)。 +- 开启‘innodb_large_prefix’,修改默认行格式‘innodb_file_format’为Barracuda,并设置row_format=dynamic。 + +## 8.9、出现ESIndexNotFoundEXception报错 + +**原因 :**没有创建ES索引模版 + +**解决方案:**执行init_es_template.sh脚本,创建ES索引模版即可。