Mysql – multiple requests shut down thesql

MySQLUbuntu

I have some problems with my mysql database.

I configured a server with the database and other services (apache, php) and put run multiple applications.

There are two problems.

  1. Every day at the same time mysql fails, and I must go and restart it.
  2. Every time I reload the website many times continuously mysql falls, and again and need to restart it.

Mysql logs show:

140107 0:09:29 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use$
140107 0:09:29 [Note] Plugin 'FEDERATED' is disabled.
140107 0:09:29 InnoDB: The InnoDB memory heap is disabled
140107 0:09:29 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140107 0:09:29 InnoDB: Compressed tables use zlib 1.2.3.4
140107 0:09:29 InnoDB: Initializing buffer pool, size = 64.0M
InnoDB: mmap(68681728 bytes) failed; errno 12
140107 0:09:29 InnoDB: Completed initialization of buffer pool
140107 0:09:29 InnoDB: Fatal error: cannot allocate memory for the buffer pool
140107 0:09:29 [ERROR] Plugin 'InnoDB' init function returned error.
140107 0:09:29 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140107 0:09:29 [ERROR] Unknown/unsupported storage engine: InnoDB
140107 0:09:29 [ERROR] Aborting
140107 0:09:29 [Note] /usr/sbin/mysqld: Shutdown complete

What's wrong with my database?

Best Answer

The comment from Barmar is correct.

You do not have enough memory in the server for the InnoDB Buffer Pool.

Since you got the message

140107 0:09:29 InnoDB: Initializing buffer pool, size = 64.0M

followed by

140107 0:09:29 InnoDB: Fatal error: cannot allocate memory for the buffer pool

you should lower innodb_buffer_pool_size below 64M in /etc/my.cnf and restart mysql.

SUGGESTION: If it is withn your budget, you should setup Apache and PHP on a separate server. Connection all webserver requests to the DB thereafter.