INNODB включен по умолчанию в MySQL? - PullRequest
2 голосов
/ 16 июля 2009

Я занимаюсь разработкой веб-приложения, для которого планирую использовать InnoDB. Однако я читал, что иногда InnoDB не включен по умолчанию, и нужно изменить конфигурацию MySQL, чтобы включить его ... Это правда? Поскольку мое веб-приложение будет установлено самими клиентами в собственном веб-пространстве, я должен убедиться, что мое приложение максимально совместимо. Если InnoDB отключен по умолчанию, то мне нужно искать обходные пути.

Ответы [ 3 ]

5 голосов
/ 29 августа 2009

InnoDB существует с MySQL 4.0 и компилируется в большинство выпусков, за исключением некоторых специальных - например, что дается производителям OEM.

Некоторые (очень дешевые) хостинг-провайдеры предпочитают отключать его, потому что он использует немного больше памяти. По большей части они в меньшинстве, так что вам не нужно беспокоиться.

Формулировка «механизм хранения по умолчанию» также не должна касаться вас. Это просто означает, что происходит, когда вы не указываете один. т.е.

CREATE TABLE my_table (a int);
- instead of -
CREATE TABLE my_table (a int) ENGINE=INNODB;

Если вы восстанавливаете из mysqldump, он сохранит информацию о ДВИГАТЕЛЕ. Если InnoDB не существует, MySQL автоматически заменит MyISAM (если вы не измените sql_mode по умолчанию, чтобы избежать этой замены).

3 голосов
/ 16 июля 2009

Вы можете проверить, поддерживает ли ваш сервер InnoDB, используя:

ПОКАЗАТЬ [ХРАНЕНИЕ] ДВИГАТЕЛИ

Я тоже читаю:

"Установщик Windows Essentials делает InnoDB механизмом хранения MySQL по умолчанию в Windows, если устанавливаемый сервер поддерживает InnoDB."

1 голос
/ 08 декабря 2011

Начиная с MySQL 5.5, Innodb является механизмом хранения по умолчанию (поэтому он будет включен): http://dev.mysql.com/doc/refman/5.5/en/innodb-default-se.html

...