![Get Mysql Row size too large error when change engine from MyISAM to Innodb Get Mysql Row size too large error when change engine from MyISAM to Innodb](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglkUwyg5iKBlV2UaL9Y-HgFD8_nOij7eXyfYH14vvKlK90EOx5tJczZp_lHISBzHyhBgyFWeTtnGSrCLZ2hkqbt8bURDzQ_oOT1-MV6WghK52-NwkRxlUqtEbk7SNL2wohXxS8UtoB7gqL/d/Get+Mysql+Row+size+too+large+error+when+change+engine+from+MyISAM+to+Innodb.png)
ALTER TABLE table_name ENGINE=InnoDB
When i try to change the engine From MyISAM to InnoDB, getting following error.
row size too large (> 8126). changing some columns to text or blob or using row_format=dynamic or row_format=compressed may help.
Solutions:
- Add the following to the my.cnf file under [mysqld] section.
innodb_file_per_table=1; innodb_file_format = Barracuda; innodb_log_file_size = 256M
- ALTER TABLE table_name ENGINE=InnoDB ROW_FORMAT=COMPRESSED KEY_BLOCK_SIZE=8;