Не удается запустить службу MySQL [закрыто]

10

Я не могу перезапустить службу MySQL с моего сервера Ubuntu. Вот ошибка:

● mysql.service - LSB: Start and stop the mysql database server daemon
Loaded: loaded (/etc/init.d/mysql; bad; vendor preset: enabled)   
Active: failed (Result: exit-code) since mer. 2016-06-08 17:31:06 CEST; 54s ago
Docs: man:systemd-sysv-generator(8)   Process: 4087 ExecStart=/etc/init.d/mysql start (code=exited, status=1/FAILURE)

juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]: [61B blob data]
juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")'
juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
juin 08 17:31:06 SRV-OVH-GIC03-V /etc/init.d/mysql[4569]:
juin 08 17:31:06 SRV-OVH-GIC03-V mysql[4087]:    ...fail!
juin 08 17:31:06 SRV-OVH-GIC03-V systemd[1]: mysql.service: Control process exited, code=exited status=1
juin 08 17:31:06 SRV-OVH-GIC03-V systemd[1]: Failed to start LSB: Start and stop the mysql database server daemon.
juin 08 17:31:06 SRV-OVH-GIC03-V systemd[1]: mysql.service: Unit entered failed state.
juin 08 17:31:06 SRV-OVH-GIC03-V systemd[1]: mysql.service: Failed with result 'exit-code'.

Я попытался перезапустить службу mysql (перезапуск службы sudo mysql). Сокет, похоже, отсутствует, поэтому я искал, как его создать, и все решения, которые я нашел, - перезапустить службу mysql ... Как я могу исправить эту ошибку?

Eko
источник
1
Сокет работает только после запуска службы, когда остановлен, сокет удаляется. Проверьте /etc/my.cnf и убедитесь, что каталоги datadir, logdir и log file присутствуют и могут быть записаны пользователем mysql.
Алекс Берри
1
Попробуйте использовать systemctl restart mysql.serviceне уверен, что сервис правильно обрабатывает systemd.
lsmooth
@AlexBerry У меня нет файла /etc/my.cnf. Должен ли я создать это? Что я должен положить в это?
Эко
@lsmooth Та же ошибка с этой командой
Эко

Ответы:

14

Запустите mysqld --helpи проверьте, если он сообщает о каких-либо проблем с конфигурацией

Проверьте логи в /var/log/mysql

Попробуйте запустить его напрямую и проверьте ошибки:

mkdir /var/run/mysqld/
chown mysql: /var/run/mysqld/
mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --socket=/var/run/mysqld/mysqld.sock
Селиванов Павел
источник
1
У меня действительно были проблемы с конфигом, папка отсутствовала. Если я запускаю его напрямую с вашим методом, у меня появляются ошибки в журналах: «неизвестная переменная« myisam-recover = BACKUP »», которая вызывает завершение работы
Eko
3
Попробуйте переименовать его в «myisam-recover-options = BACKUP». И, пожалуйста, примите ответ, если это поможет
Селиванов Павел