返回列表 发帖
楼主: 湖中沉

[已解决] 升级X3.5常见问题汇总

 

17

回帖

1

粉丝

0

关注

初学乍练

贡献
0 点
金币
3 个
发表于 2025-6-20 17:22:31 |湖南| 查看全部
Discuz! Database Error
Time: 2025-06-20 17:18:19 +0800 IP: 110.53.44.63 BackTraceID: 38fb1b9072aca0dce9aff7016bd34ade

(1118) Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED may help. In current row format, BLOB prefix of 768 bytes is stored inline.
ALTER TABLE common_member_profile_archive ENGINE=InnoDB;
PHP Debug

No.        File        Line        Code
1        install/update_adult.php        260        discuz_database::query()
2        source/class/discuz/discuz_database.php        142        db_driver_mysqli->query()
3        source/class/db/db_driver_mysqli.php        147        db_driver_mysqli->halt()
4        source/class/db/db_driver_mysqli.php        222        break()
回复

使用道具 举报

6516

回帖

9

粉丝

10

关注

应用开发者

贡献
648 点
金币
1450 个
QQ
 楼主| 发表于 2025-6-20 17:31:22 |浙江| 查看全部
hhdao 发表于 2025-6-20 17:22
Discuz! Database Error
Time: 2025-06-20 17:18:19 +0800 IP: 110.53.44.63 BackTraceID: 38fb1b9072aca0d ...


当 Discuz! 升级到 X3.5 时出现 “Row size too large (> 8126)” 错误,这是 MySQL 的行长度限制导致的问题。以下是解决此问题的步骤:
1. 修改 MySQL 配置
首先需要调整 MySQL 的配置参数,以支持更大的行长度。
步骤:
1找到 MySQL 配置文件(通常是my.cnf或my.ini)。
2在[mysqld]部分添加或修改以下参数:

  1. innodb_file_per_table = 1
  2. innodb_strict_mode = 0
  3. innodb_file_format = Barracuda
  4. innodb_log_file_size = 256M
复制代码


3重启 MySQL 服务。
回复

使用道具 举报

116

回帖

3

粉丝

0

关注

渐入佳境

贡献
0 点
金币
1 个
QQ
发表于 2025-7-22 08:33:31 |湖北| 查看全部
3.5为什么不能使用data/restore.php恢复数据?恢复大概不到10卷就页面不存在了(总共840卷)。
回复

使用道具 举报

6516

回帖

9

粉丝

10

关注

应用开发者

贡献
648 点
金币
1450 个
QQ
 楼主| 发表于 2025-7-22 08:50:59 |浙江| 查看全部
石桥佬 发表于 2025-7-22 08:33
3.5为什么不能使用data/restore.php恢复数据?恢复大概不到10卷就页面不存在了(总共840卷)。 ...

这大概率是数据有问题,而不是不能用data/restore.php了……X3.5在这部分是没有更改的
回复

使用道具 举报

116

回帖

3

粉丝

0

关注

渐入佳境

贡献
0 点
金币
1 个
QQ
发表于 2025-7-22 11:27:44 |湖北| 查看全部
湖中沉 发表于 2025-7-22 08:50
这大概率是数据有问题,而不是不能用data/restore.php了……X3.5在这部分是没有更改的 ...

已经找到原因了,竟然是PHP版本过高(8.2)所致,降到7.4后一切正常了
回复

使用道具 举报

5

回帖

1

粉丝

1

关注

初学乍练

贡献
0 点
金币
5 个
发表于 前天 09:25 |湖南| 查看全部
报错信息如下,寻求解决方法:
(1136) Column count doesn't match value count at row 1
截图如下:
回复

使用道具 举报

6516

回帖

9

粉丝

10

关注

应用开发者

贡献
648 点
金币
1450 个
QQ
 楼主| 发表于 前天 10:33 |浙江| 查看全部
wuhancyf 发表于 2026-1-25 09:25
报错信息如下,寻求解决方法:;(1136) Column count doesn't match value count at row 1;截图如下:; ...

已帮助处理
回复

使用道具 举报

5

回帖

1

粉丝

1

关注

初学乍练

贡献
0 点
金币
5 个
发表于 前天 10:36 |湖南| 查看全部

谢谢你大神,非常感谢~
:handshake
回复

使用道具 举报

2

回帖

0

粉丝

0

关注

初学乍练

贡献
0 点
金币
5 个
发表于 昨天 22:44 |四川| 查看全部
mysqli object is already closed 错误,是升级到2025.09.01出错
360截图20260126224315876.jpg
回复

使用道具 举报

6516

回帖

9

粉丝

10

关注

应用开发者

贡献
648 点
金币
1450 个
QQ
 楼主| 发表于 2 小时前 |浙江| 查看全部
quanjixiu 发表于 2026-1-26 22:44
mysqli object is already closed 错误,是升级到2025.09.01出错
你遇到了 mysqli object is already closed 这个错误,核心含义是你试图操作一个已经被关闭(释放)的 mysqli 数据库连接对象—— 这个对象已经不具备数据库操作的能力了,再调用它的查询、执行等方法就会抛出该错误。
常见的触发场景有以下几种,新手很容易踩坑:
  1. 1. 已经主动调用了 $mysqli->close()mysqli_close($mysqli) 关闭连接,后续又继续使用这个 $mysqli 对象进行数据库操作(如查询、插入等)。
  2. 2. mysqli 连接对象超出了作用域被自动销毁(比如在函数内部创建的连接,函数执行完毕后未返回,外部试图使用)。
  3. 3. 脚本执行过程中,连接被意外中断(如数据库服务重启、网络断开),导致对象变为无效关闭状态。
  4. 4. 重复关闭同一个连接对象(虽然重复关闭本身可能不报错,但后续操作必然会触发该错误)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2026-1-27 09:57 , Processed in 0.044922 second(s), 9 queries , Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2026 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表