Назад | Перейти на главную страницу

MariaDB отказывается запускаться после перезагрузки сервера

После того, как я перезагрузил VServer, MariaDB отказывается запускаться.

Это сообщения об ошибках:

# systemctl status mysql.service
● mysql.service - LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql)
Active: failed (Result: exit-code) since Thu 2016-02-18 11:02:39 UTC; 2min 56s ago
Process: 5921 ExecStop=/etc/init.d/mysql stop (code=exited, status=0/SUCCESS)
Process: 6931 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE)

Feb 18 11:02:09 server mysqld[7119]: InnoDB: If you are installing InnoDB, remember that you must create
Feb 18 11:02:09 server mysqld[7119]: InnoDB: directories yourself, InnoDB does not create them.
Feb 18 11:02:09 server mysqld[7119]: 160218 11:02:09 [ERROR] InnoDB: File (unknown): 'read' returned OS error 71. Cannot continue operation
Feb 18 11:02:09 server mysqld_safe[7133]: mysqld from pid file /var/run/mysqld/mysqld.pid ended
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: [61B blob data]
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")'
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Feb 18 11:02:39 server /etc/init.d/mysql[7412]:
Feb 18 11:02:39 server mysql[6931]: Starting MariaDB database server: mysqld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . failed!

и

# journalctl -xn
-- Logs begin at Thu 2016-02-18 10:10:43 UTC, end at Thu 2016-02-18 11:02:39 UTC. --
Feb 18 11:02:09 server mysqld[7119]: InnoDB: If you are installing InnoDB, remember that you must create
Feb 18 11:02:09 server mysqld[7119]: InnoDB: directories yourself, InnoDB does not create them.
Feb 18 11:02:09 server mysqld[7119]: 160218 11:02:09 [ERROR] InnoDB: File (unknown): 'read' returned OS error 71. Cannot continue operation
Feb 18 11:02:09 server mysqld_safe[7133]: mysqld from pid file /var/run/mysqld/mysqld.pid ended
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: [61B blob data]
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")'
Feb 18 11:02:39 server /etc/init.d/mysql[7412]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
Feb 18 11:02:39 server /etc/init.d/mysql[7412]:
Feb 18 11:02:39 server mysql[6931]: Starting MariaDB database server: mysqld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . failed!

Мой my.cnf можно найти здесь: https://debianforum.de/forum/pastebin.php?mode=view&s=39158

После поиска в arround я нашел параметр конфигурации «innodb_force_recovery», если я установил его на «6», сервер базы данных запускается, но база данных все еще не работает.

Есть идеи, в чем проблема? Как я мог это исправить?

Большое спасибо!

Я решил проблему. Я не уверен, что понимаю это полностью, но, похоже, это похоже на то, что описано здесь https://mariadb.com/blog/get-rid-orphaned-innodb- Contemporary-tables-right-way Я удалил все файлы # sql * .idb и # sql * .frm, и сервер базы данных снова запустился. Не уверен, что это идеальное решение, но оно сработало.