InnoDB: фатальная ошибка: не удается выделить память для пула буферов

MySQL, кажется, падает довольно часто, я бы сказал, каждый час или около того.

Единственная вещь, которая работает на этом сервере, использующем MySQL, - это установка Drupal, над которой я работаю, есть только один человек, который использует ее, и у нее буквально три страницы - насколько я понимаю, это проблема с памятью. InnoDB? Я не очень хорош в этом, поэтому я не уверен.

Любое руководство? Вот соответствующие части из моего error.log

140216 14:20:01 [Note] Plugin 'FEDERATED' is disabled.
140216 14:20:01 InnoDB: The InnoDB memory heap is disabled
140216 14:20:01 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140216 14:20:01 InnoDB: Compressed tables use zlib 1.2.3.4
140216 14:20:01 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(135987200 bytes) failed; errno 12
140216 14:20:01 InnoDB: Completed initialization of buffer pool
140216 14:20:01 InnoDB: Fatal error: cannot allocate memory for the buffer pool
140216 14:20:01 [ERROR] Plugin 'InnoDB' init function returned error.
140216 14:20:01 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140216 14:20:01 [ERROR] Unknown/unsupported storage engine: InnoDB
140216 14:20:01 [ERROR] Aborting

140216 14:20:01 [Note] /usr/sbin/mysqld: Shutdown complete

140216 14:20:02 [Note] Plugin 'FEDERATED' is disabled.
140216 14:20:02 InnoDB: The InnoDB memory heap is disabled
140216 14:20:02 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140216 14:20:02 InnoDB: Compressed tables use zlib 1.2.3.4
140216 14:20:02 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(135987200 bytes) failed; errno 12
140216 14:20:02 InnoDB: Completed initialization of buffer pool
140216 14:20:02 InnoDB: Fatal error: cannot allocate memory for the buffer pool
140216 14:20:02 [ERROR] Plugin 'InnoDB' init function returned error.
140216 14:20:02 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140216 14:20:02 [ERROR] Unknown/unsupported storage engine: InnoDB
140216 14:20:02 [ERROR] Aborting

140216 14:20:02 [Note] /usr/sbin/mysqld: Shutdown complete

РЕДАКТИРОВАТЬ
Сервер - самая низкая спецификация DigitalOcean Droplet с 512 МБ ОЗУ. Этот конкретный Droplet работает под управлением NodeJS, MySQL и Apache. Есть статический сайт с низким трафиком, блог Ghost и этот сайт на Drupal, который я разрабатываю.

Должен ли я просто обновить оперативную память, или я могу что-то сделать, чтобы это исправить?

1 ответ

MySQL не запускается, потому что он не может выделить 128M для пула буферов InnoDB.

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

Другие вопросы по тегам