0

As I am trying to update a large table (on a online server as well as a MAMP installation) if get the message

Fatal error: Uncaught mysqli_sql_exception: Row size too large (> 8126).

The table has 190 colums most of them small (int and tinyint) but also quite some varchar(255) due to installed translations and about 1000 rows. Splitting up to more tables is not an option as it belongs to a Joomla extension and as such updating would cause issues.

I searched for solutions and more info, but remain with questions:

If I change some columns to BLOB of TEXT (as suggested) are there differences in approaching these columns? What I mean to figure out if I can do this without interfering in the working of the extension.

Understand that setting

innodb_file_per_table=ON
innodb_default_row_format=dynamic
innodb_file_format=Barracuda

might help, but where do you check and change these settings? Where to findmy.cnf?

In short, advice needed what is the best way to handle an issue like this?

John
  • 17
  • 6
  • @Your Common Sense Just read "duplicate" but still no clue about possible consequences of using BLOB or TEXT as well as where to find my.cnf . And that . . . where my questions. It is because I am struggling that I am here, not because I am a master . . . – John Oct 12 '17 at 14:56
  • John -- I added an Answer to that "dup" Question. If it addresses your issue, good. If you have one column per translations, it is a prime candidate for "not splaying an array across columns". If my answer does not help enough, please start a new Question, including `SHOW CREATE TABLE`; there may be other techniques. – Rick James Oct 12 '17 at 16:18

0 Answers0