编辑
2026-04-01
undefined
00

Typecho有个友情链接插件叫Links,之前用的好好的,在网站搬家后,想添加个链接,结果提交出现错误:Database Query Error

Typecho默认是关闭DEBUG模式的,在出现500错误的时候,无法看到具体的错误信息。可以按照下面操作打开Typecho DEBUG模式,查看具体的错误信息:

  • 打开Typecho目录下的config.inc.php
  • 在文件中增加:define('__TYPECHO_DEBUG__', TRUE);

重新添加链接,结果提交出现错误:SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect integer value: for column at row 1

在网上找来找去,开始以为是数据库编码格式问题,就把编码全部改为utf8mb4,结果发现还是不行。

后来又在网上找到了另外的思路,是由于MariaDB默认工作在严格模式下,导致有NULL值插入失败,找到问题根源,那就把MariaDB严格模式取消了呗。

  • 编辑/etc/my.cnf文件,在[mysqld]配置下新增:sql_mode=NO_ENGINE_SUBSTITUTION
  • 之后重启MariaDB:systemctl restart mariadb.service
  • 验证是否禁用严格模式,进入MySQL CLI:MariaDB [typecho]> select @@sql_mode;

本文作者:a

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!