Задать вопрос

(Errcode: 2) Почему не запускается mysql автоматически после перезагрузки сервера?

Для Bitrix нужно было обновить mysql. Соответсвенно было он обновлён!

После запуска через команду в консоли SSH ввел
systemctl start mysql

После появляется эта ошибка.


Jun 26 11:24:20 server mysqld[3174]: 2019-06-26 11:24:20 47780976727808 [ERROR] mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 2 "No such file or directory")
Jun 26 11:24:20 server systemd[1]: mariadb.service: main process exited, code=exited, status=1/FAILURE
Jun 26 11:24:21 server systemd[1]: Unit mariadb.service entered failed state.erver.
Jun 26 11:24:21 server systemd[1]: mariadb.service failed.


Решил этот вопрос ручками!

Создаю папку mysqld по этому пути /var/run/

и после прописываю команды
chown mysql /var/run/mysqld
chmod 755 /var/run/mysqld


Повторяю запуск
systemctl start mysql


Успешно! Раньше этого не было. То есть после перезагрузки сервера приходится делать именно эти манипуляции!

Как можно исправить это ?
  • Вопрос задан
  • 852 просмотра
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@vlarkanov
Вангую, что /var/run монитируется в /tmp. Это так?

Если да, то логично, что директория /var/run/mysqld пропадает после перезагрузки (/tmp ведь очищается каждый раз).

Тогда есть два пути:
1) Не монтировать /var/run в /tmp (не факт что ничего не сломается, если так по умолчанию настроен дистр);
2) В конфиге mysql поменять пути в переменной socket и pid-file:
socket=/var/lib/mysql/run/mysqld.sock
pid-file=/var/lib/mysql/run/mysqld.pid


Не забудьте создать директорию /var/lib/mysql/run/ и дать ей нужные права.
Ответ написан
Комментировать
@BorisKorobkov Куратор тега MySQL
Web developer
Для автозагрузки надо один раз запустить:
systemctl enable mysql

Вероятно, у вас это и так сделано. А проблема в том, что кто-то при обновлении сбросил chmod/chown
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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