Mysql service won't start, InnoDB init functio

2019-01-12 12:06发布

问题:

So seemingly out of nowhere tonight, my wordpress site went down and I've traced it to problems with mysql. Mysql won't start on the server because it keeps failing.

Here is what I'm getting from the logs:

140226 08:54:11 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
140226 08:58:20 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
140226  8:58:20 [Note] Plugin 'FEDERATED' is disabled.
140226  8:58:20 InnoDB: The InnoDB memory heap is disabled
140226  8:58:20 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140226  8:58:20 InnoDB: Compressed tables use zlib 1.2.3
140226  8:58:20 InnoDB: Using Linux native AIO
/usr/libexec/mysqld: Can't create/write to file '/dev/shm/mysql/ibOqUOjF' (Errcode: 2)
140226  8:58:20  InnoDB: Error: unable to create temporary file; errno: 2
140226  8:58:20 [ERROR] Plugin 'InnoDB' init function returned error.
140226  8:58:20 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140226  8:58:20 [ERROR] Unknown/unsupported storage engine: InnoDB
140226  8:58:20 [ERROR] Aborting

I've tried Googling and looking here on Stack Overflow, but I can't seem to find many solutions except to delete the ipdata1 and log files which, as I've read, shouldn't be done with stored data because it would mess up my tables.

This is on an NGINX CentOS 6 server.

Any ideas? I appreciate the help!

回答1:

AFAIK System error: 2 = No such file or directory.

Check that the directory exist, that mysql has permission to write to it and that there enough space left on the disk.



回答2:

Another consideration might be to ensure your tmpdir used for mysql has enough disk space and required permission.

In addition, for windows users: consider using front slash (/) as against back slash (\) for your tmpdir path