升级Discuz!3.5(dz3.5)遇到的一些常见问题
2023-02-21 19:21 来自 浅生 发布@ Discuz! X3.5专区
dx3.5与其它版本的区别:
mysql引擎由myisam变为innodb 对php支持的变化php7及更高 一些函数或类的变化 ui的变化
这此区别都会升级或升级后造成影响或错误,常见的错误如下:
引擎的变化,造成有些key字段过长,升级时报错的问题,这时不要慌,打开phpmyadmin,对key字段的长度调小即可,前提是不影响存储的正确,然后刷新错误页继续升级即可 php7或php8有更高语法要求,一些不合规的脚本也会报错,根据报错修改脚即可 函数和类的变化,会造成函数缺失或参数的报错,同样也是根具体的报错修改脚本即可 ui的变化,主要css和js的变化造成的兼容问题,这个要修改css和js来解决
总之,大体变化不大,但兼容问题是存在的,参考以上依次解决即可,如需帮助,可访问以下网址联系我。
https://addon.dismall.com/developer-8715.html
我知道答案 回答被采纳将会获得1 贡献 已有0人回答
mysql引擎由myisam变为innodb 对php支持的变化php7及更高 一些函数或类的变化 ui的变化
这此区别都会升级或升级后造成影响或错误,常见的错误如下:
引擎的变化,造成有些key字段过长,升级时报错的问题,这时不要慌,打开phpmyadmin,对key字段的长度调小即可,前提是不影响存储的正确,然后刷新错误页继续升级即可 php7或php8有更高语法要求,一些不合规的脚本也会报错,根据报错修改脚即可 函数和类的变化,会造成函数缺失或参数的报错,同样也是根具体的报错修改脚本即可 ui的变化,主要css和js的变化造成的兼容问题,这个要修改css和js来解决
总之,大体变化不大,但兼容问题是存在的,参考以上依次解决即可,如需帮助,可访问以下网址联系我。
https://addon.dismall.com/developer-8715.html
我知道答案 回答被采纳将会获得1 贡献 已有0人回答
Discuz!X3.5 MySQL InnoDB引擎max key length is 767bytes长度问题
2021-01-22 13:35 来自 admin 发布@ Discuz! X3.5专区
允许索引字段前缀的字节限制为 767 bytes,且:
当字符集为 utf8mb4 时,一个字符对应 4 bytes;
当字符集为 utf8 时,一个字符对应 3 bytes;
所以对于(一)中的问题:字符集为 utf8mb4, 所以可申请索引的 varchar 长度为:767/4 ≈ 191;而字符集为 utf8 时,可设置的创建索引 varchar 长度为: 767/3 ≈ 255在 5.6.3 之后的版本,字节限制提高到了 3072 bytes.
从(二)可得:字符集为 utf8mb4 时,限制 varchar 字符为:3072/4 = 768;字符集为 utf8 时,限制 varchar 字符为:3072/3 = 1024;因此字符集为 utf8mb4 时,将 name 字段索引前缀长度控制在 768 以内即可成功创建索引。
当字符集为 utf8mb4 时,一个字符对应 4 bytes;
当字符集为 utf8 时,一个字符对应 3 bytes;
所以对于(一)中的问题:字符集为 utf8mb4, 所以可申请索引的 varchar 长度为:767/4 ≈ 191;而字符集为 utf8 时,可设置的创建索引 varchar 长度为: 767/3 ≈ 255在 5.6.3 之后的版本,字节限制提高到了 3072 bytes.
从(二)可得:字符集为 utf8mb4 时,限制 varchar 字符为:3072/4 = 768;字符集为 utf8 时,限制 varchar 字符为:3072/3 = 1024;因此字符集为 utf8mb4 时,将 name 字段索引前缀长度控制在 768 以内即可成功创建索引。



