При попытке запустить mysqld
демон на CentOS 6.5 я получаю следующую ошибку:
[root@hardin ~]# service mysqld start
Another MySQL daemon already running with the same unix socket.
Starting mysqld: [FAILED]
Что странно, потому что служба не запускается (она настроена для работы на порту по умолчанию):
[root@hardin ~]# service mysqld status
mysqld is stopped
Я не уверен, как найти сокет Unix, вызывающий проблему:
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags Type State I-Node Path
unix 10 [ ] DGRAM 12056 /dev/log
unix 2 [ ACC ] STREAM LISTENING 8720 @/com/ubuntu/upstart
unix 2 [ ACC ] STREAM LISTENING 12878 /var/run/mcelog-client
unix 2 [ ] DGRAM 9289 @/org/kernel/udev/udevd
unix 2 [ ] DGRAM 12440 @/org/freedesktop/hal/udev_event
unix 2 [ ACC ] STREAM LISTENING 12275 /var/run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 13128 /var/run/abrt/abrt.socket
unix 2 [ ACC ] STREAM LISTENING 12415 @/var/run/hald/dbus-jQMFHN9EAI
unix 2 [ ACC ] STREAM LISTENING 12408 @/var/run/hald/dbus-YQIZ9h7s4Q
unix 2 [ ACC ] STREAM LISTENING 12371 /var/run/acpid.socket
unix 2 [ ] DGRAM 14119
unix 3 [ ] STREAM CONNECTED 13579 /var/run/dbus/system_bus_socket
unix 3 [ ] STREAM CONNECTED 13578
unix 2 [ ] DGRAM 13521
unix 3 [ ] STREAM CONNECTED 13493
unix 3 [ ] STREAM CONNECTED 13492
unix 2 [ ] DGRAM 13130
unix 2 [ ] DGRAM 13058
unix 2 [ ] DGRAM 13023
unix 2 [ ] DGRAM 12875
unix 2 [ ] DGRAM 12840
unix 3 [ ] STREAM CONNECTED 12773 /var/run/acpid.socket
unix 3 [ ] STREAM CONNECTED 12772
unix 3 [ ] STREAM CONNECTED 12767 @/var/run/hald/dbus-YQIZ9h7s4Q
unix 3 [ ] STREAM CONNECTED 12766
unix 3 [ ] STREAM CONNECTED 12716 @/var/run/hald/dbus-YQIZ9h7s4Q
unix 3 [ ] STREAM CONNECTED 12634
unix 3 [ ] STREAM CONNECTED 12714 @/var/run/hald/dbus-YQIZ9h7s4Q
unix 3 [ ] STREAM CONNECTED 12534
unix 3 [ ] STREAM CONNECTED 12435 @/var/run/hald/dbus-jQMFHN9EAI
unix 3 [ ] STREAM CONNECTED 12434
unix 3 [ ] STREAM CONNECTED 12410 /var/run/dbus/system_bus_socket
unix 3 [ ] STREAM CONNECTED 12409
unix 2 [ ] DGRAM 12375
unix 3 [ ] STREAM CONNECTED 12295 /var/run/dbus/system_bus_socket
unix 3 [ ] STREAM CONNECTED 12294
unix 3 [ ] STREAM CONNECTED 12289
unix 3 [ ] STREAM CONNECTED 12288
unix 3 [ ] DGRAM 9308
unix 3 [ ] DGRAM 9307
Я использую этот ящик как сервер Git, на котором запущен GitLab, и раньше он работал. После холодной перезагрузки больше не работает, потому что unicorn
не может подключиться к MySQL по указанной выше причине:
/home/git/gitlab/vendor/bundle/ruby/2.1.0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect': Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111) (Mysql2::Error)
Мне интересно, как это исправить и узнать, какая служба работает на порту MySQL.
Ты можешь использовать
lsof -U | grep -i mysql
mysqld 28944 mysql 12u unix 0xffff88002cacb6c0 0t0 532368 /var/lib/mysql/mysql.sock
mysqld 28944 mysql 29u unix 0xffff88002a724380 0t0 532402 /var/lib/mysql/mysql.sock
чтобы узнать, какой процесс (если есть) владеет сокетом, и предпринять соответствующие действия
Если вы уверены, что другой процесс MySQL не запущен, вы можете просто удалить /var/lib/mysql/mysql.sock
файл. При запуске MySQL, если сокет не существует, он воссоздает его.