Неизвестный/неподдерживаемый механизм устройства хранения данных: InnoDB | MySQL Ubuntu

Я не попробовал эту определенную ситуацию сам, но вот полезная ссылка, которая должна выручить Вас.

Так как эта статья была написана, Amazon представил способность выполнить пользовательское ядро, которое может помочь, если ядро, используемое на Вашем VM, не является одним из стандартных ядер EC2 (я предполагаю, что Вы используете Linux здесь). См. эту ссылку для большего количества информации.

45
задан 10 July 2014 в 11:44
6 ответов

Если вам действительно нужен skip-innodb (вариант использования: низкий объем памяти), то, конечно, вам не нужно комментировать его. Однако, если InnoDB является механизмом хранения по умолчанию, сервер не запустится, пока вы не укажете ему, какой механизм хранения использовать вместо этого, например default-storage-engine = myisam для MyISAM.

Итак, попробуйте это:

$ sudo -u mysql mysqld --skip-innodb --default-storage-engine=myisam
23
ответ дан 28 November 2019 в 19:40

Попробуйте еще 2 вещи. 1. Уменьшите размер буферного пула innodb. 2. Отредактируйте исходный сценарий mysql и добавьте параметр --innodb.

Мне также интересно, содержит ли ваш пакет ошибки. Не могли бы вы попробовать другую младшую версию?

Кроме того, я предполагаю, что ваш сервер mysql тоже был обновлен? Может та версия битая? Точность еще не окончательная.

0
ответ дан 28 November 2019 в 19:40

Если вы используете MySQL 5.6+ и хотите отключить InnoDB, не забудьте " - default-tmp-storage ", иначе это не сработает:

Чтобы отключить InnoDB, используйте --innodb = OFF или --skip-innodb. В этом случае, поскольку механизм хранения по умолчанию - InnoDB, сервер не будет start, если вы также не используете --default-storage-engine и --default-tmp-storage-engine, чтобы установить какой-либо другой механизм по умолчанию как для постоянных, так и для ВРЕМЕННЫХ таблиц.

http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html # option_mysqld_ignore-builtin-innodb

Вы можете добавить это в свой my.cnf:

[mysqld] 
innodb=OFF 
ignore-builtin-innodb 
skip-innodb
default-storage-engine=myisam 
default-tmp-storage-engine=myisam

, чтобы убедиться, что он работает.

12
ответ дан 28 November 2019 в 19:40

После проверки журналов я обнаружил следующую ошибку:

[ERROR] Unknown/unsupported storage engine: InnoDB

Я удалил эти файлы:

rm /var/lib/mysql/ib_logfile0
rm /var/lib/mysql/ib_logfile1 

в / var / lib / mysql

Это решило мою проблему после перезапуска.

34
ответ дан 28 November 2019 в 19:40

Проверьте журнал ошибок mysql.

tail -100 /var/log/mysql/error.log

Если в вашем журнале написано (как и в моем):

 InnoDB: Инициализация буферного пула, размер = 128.0M
InnoDB: ошибка mmap (137363456 байт);  ошибка 12
 [ОШИБКА] InnoDB: не удается выделить память для буферного пула 

У вас недостаточно памяти для использования размера буфера по умолчанию 128 МБ

Отредактируйте файл конфигурации /etc/mysql/my.cnf добавление строки для указания меньшего innodb_buffer_pool_size.

# make the buffer pool smaller than 128M since we only have 1 GB of total RAM
innodb_buffer_pool_size = 16M

Сохраните файл конфигурации и запустите mysql

sudo service mysql start
7
ответ дан 28 November 2019 в 19:40

Я получил эту ошибку, когда удалил местоположение, которое я использую для tmpdir . Если вы недавно изменили свой tmpdir , возможно, вы захотите проверить, что это действительное место с возможностью записи.

0
ответ дан 28 November 2019 в 19:40

Теги

Похожие вопросы