2017-08-14 192 views
0

我知道这个问题有很多问题,我也发现了很多建议,但没有一个可行。我的网站是siteground.com上的hostet。一切正常,迄今为止,突然我得到了MySQL - 错误1118行大小太大(> 8126) - 无法访问sql-config

Error: 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.

在“随机”的基础上。

其实我的整个网站(joomla 3.7.4/PHP 7.0.22/sql-server:5.6.36-82.1-log - Percona Server(GPL),Release 82.1,Revision 1a00d79)有很多自定义代码isn'因为这个,不再可用了。

现在我明白,这与总行大小有关,但作为一个数据库和php业余我还是不明白。

  • 是否有太多colums在一行中,或者是否有太多数据在 列?
  • “Row size too(> 8126)”是什么?目前 每行81列,根据phpMyAdmin,整个表 需要32KiB的Data,16KiB的Index,共计48 KiB。如果我 看的Joomla系统内的其他表,这是一个非常小的 量数据(包括了序列化数组,一些文本和 完蛋了的)的
  • 为什么这个问题来了“通宵” - 从我身边没有更新或db-strukture的任何更改。
  • 如何确定或查看实际的行大小,以便我可以“尝试”以适应数据库设置需求?

我可以对此问题做些什么吗?或者,如果托管方无法或不会在设置中更改某些内容,我是否会“搁浅”?

我迄今所做的:

由于我必须于服务器的设置没有访问我startet限制所有的“Int”和“字符”。在没有效果之后,我开始将所有的Typs改为“medium-txt”和“tiny-txt”。在第3轮中,我将所有的Typs改为“txt”,但也没有改变结果。我另外将所有utf8_general_ci转换为utf8mb4_general_ci。基本上我尽我所能,但没有成功。

正如你可以读出上面的文字,我就像一个失落在树林里的盲人,他们拼命尝试没有任何专业背景的一切,以解决这个问题。

Adittional信息(akkording到phpMyAdmin)

  • innodb log file size = 128MiB
  • innodb_strict_mode = OFF
  • Tabel-Typ = InnoDB

任何帮助,将不胜感激。要么在可能的解决方案中,要么对自身问题有所了解。 Thx先进!

+0

您是否看到[此问题](https://stackoverflow.com/questions/15585602/change-limit-for-mysql-row-size-too-large)? – James

回答