Metrics
0
Watch 2.6k Star 5.2k Fork 2.6k

ThinkGem / JeeSite 4.xJavaAGPL-3.0

jeesite4.x 初始化数据报错

Open
qinzheng609  Created at

该问题是怎么引起的?

按照官方教程搭建环境 执行sql初始化数据的时候报错

重现步骤

报错信息

输入图片说明

total 2 participants

Comments (6)

mycitclerk 2019-05-10 13:12

索引字段不超过3072个字节,如果数据库编码是utf8mb4的话,1个字符使用4个字节存储,字段长不能超过768个字符,报错原因是sys_area_tss超过了768个字符。

qinzheng609 2019-05-10 14:18

@mycitclerk 对 所以就是说官方的脚本有很多varchar(1000)的字段是不对的吧

mycitclerk 2019-05-11 12:50

老版mysql不支持utf8mb4,因为5.5.3以下的mysql不支持字符集utf8mb4,只支持utf-8,一个字符要3字个字节,所以不会报错。

qinzheng609 2019-05-12 17:18

@mycitclerk 我知道utf8不会报错 但是后面版本如果字符集选择utf8mb4的话 会报错啊 官方给的sql文件里就是utf8mb4的字符集 而且定义了很多varchar(1000)的字段

mycitclerk 2019-05-13 17:06

在报错的表的建表语句中加ROW_FORMAT参数,设置为ROW_FORMAT=DYNAMIC,按记录实际大小存储。应该就不报错了

qinzheng609 2019-05-14 09:36

@mycitclerk 创建索引
不行 加了ROW_FORMAT=DYNAMIC也会报错
表结构

Sign in and comment

Assignee
Labels
Not set
Project
Milestone
Branch
Scheduled start
Not set
Scheduled end
Not set
Top level
Priority

Help Search