MySQL Максимальная длина строки - можно увеличить? - PullRequest
4 голосов
/ 03 февраля 2011

Мне было интересно, можно ли увеличить максимальную длину строки MySQL с движком InnoDB.Ток составляет 8 КБ.

Я также хотел бы знать, что обеспечивает это ограничение.Я не помню, чтобы у меня было такое ограничение с Oracle 10 или MSSQL 2005.

Спасибо!

Ответы [ 3 ]

4 голосов
/ 03 февраля 2011

Вы должны изменить inno_db_page_size , отметьте http://www.mysqlperformanceblog.com/2006/06/04/innodb-page-size/ Это может быть 8K, 16K, 32K или 64K, по умолчанию 16K.

1 голос
/ 03 февраля 2011

MS SQL Server также имеет это ограничение.Чтобы обойти это, вы можете использовать большие объекты (например, CLOB, BLOB, TEXT и т. Д.), Поскольку они не являются частью самой записи.

В качестве альтернативы вы можете разбить свою таблицу на две таблицы, связанные 1: 1.Может быть, вы могли бы рассказать о том, чего вы пытаетесь достичь, и почему ваш стол такой большой.

0 голосов
/ 03 февраля 2011

Это ограничение для таблиц InnoDB и не может быть изменено. Согласно документам :

Максимальная длина строки, кроме столбцы переменной длины (VARBINARY, VARCHAR, BLOB и TEXT), немного менее половины страницы базы данных. То есть максимальная длина строки около 8000 байт.

Вам придется подумать о переделке вашего стола.

...