В данной статья вы узнаете почему может не запускаться zabbix после резкой перезагрузки сервера, в моем случае у меня сел UPS и теперь каждый скачок электричества приводит к выключению компа, тут я покажу алгоритм действий которые необходимо сделать чтобы понять причину ошибки и ее устранение.
Всем привет, вышел сегодня из отпуска и мой локальный тестовый стенд на котором я развернул zabbix лежит мертвым грузом и не дышит, при включении виртуалки меня в админке встречает ошибка с коннектом mysql

рассказываю для вас и фиксирую для себя действия которые помогли мне понять и быстро все починить.
т.к. нам в админке дали намек, что проблема с доступом в базу данных, мы посмотрим, что у нас случилось с mysql и для этого проверим статус этой службы командой – systemctl status mysqld
oot@appliance zabbix]# systemctl status mysqld
● mysqld.service - MySQL 8.0 database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mysqld.service.d
└─override.conf
Active: failed (Result: exit-code) since Mon 2025-08-11 09:14:22 MSK; 10min ago
Process: 1150 ExecStopPost=/usr/libexec/mysql-wait-stop (code=exited, status=0/SUCCESS)
Process: 1091 ExecStart=/usr/libexec/mysqld --basedir=/usr (code=exited, status=1/FAILURE)
Process: 1052 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SUCCESS)
Process: 1001 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)
Main PID: 1091 (code=exited, status=1/FAILURE)
Status: "Server shutdown complete"
Error: 17 (File exists)
Aug 11 09:14:16 appliance systemd[1]: Starting MySQL 8.0 database server...
Aug 11 09:14:16 appliance mysql-check-socket[1001]: Socket file /var/lib/mysql/mysql.sock exists.
Aug 11 09:14:16 appliance mysql-check-socket[1001]: No process is using /var/lib/mysql/mysql.sock, which means it is a garbage, so it will be remov>
Aug 11 09:14:22 appliance systemd[1]: mysqld.service: Main process exited, code=exited, status=1/FAILURE
Aug 11 09:14:22 appliance systemd[1]: mysqld.service: Failed with result 'exit-code'.
Aug 11 09:14:22 appliance systemd[1]: Failed to start MySQL 8.0 database server.
По логу видим, что он дошёл до запуска, но упал с status=1/FAILURE.
Теперь переходим к след шагу где нужно посмотреть журнал ошибок MySQL, он всегда пишет причину падения, для этого используем команду tail -50 /var/log/mysql/mysqld.log
[root@appliance mysql]# tail -50 ./mysqld.log
2025-08-11T06:14:17.720176Z 0 [Warning] [MY-011070] [Server] 'binlog_format' is deprecated and will be removed in a future release.
2025-08-11T06:14:17.727923Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead.
2025-08-11T06:14:17.728253Z 0 [System] [MY-010116] [Server] /usr/libexec/mysqld (mysqld 8.0.41) starting as process 1091
2025-08-11T06:14:17.759451Z 0 [Warning] [MY-013907] [InnoDB] Deprecated configuration parameters innodb_log_file_size and/or innodb_log_files_in_group have been used to compute innodb_redo_log_capacity=536870912. Please use innodb_redo_log_capacity instead.
2025-08-11T06:14:17.769362Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2025-08-11T06:14:19.182909Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2025-08-11T06:14:19.416412Z 0 [ERROR] [MY-011300] [Server] Plugin mysqlx reported: 'Setup of socket: '/var/lib/mysql/mysqlx.sock' failed, another process with PID 1118 is using UNIX socket file'
2025-08-11T06:14:20.303871Z 0 [System] [MY-010229] [Server] Starting XA crash recovery...
2025-08-11T06:14:20.348784Z 0 [System] [MY-010232] [Server] XA crash recovery finished.
2025-08-11T06:14:20.648376Z 0 [Warning] [MY-010068] [Server] CA certificate ca.pem is self signed.
2025-08-11T06:14:20.648392Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel.
2025-08-11T06:14:20.649260Z 0 [ERROR] [MY-010259] [Server] Another process with pid 1118 is using unix socket file.
2025-08-11T06:14:20.649267Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file.
2025-08-11T06:14:20.649293Z 0 [ERROR] [MY-010119] [Server] Aborting
2025-08-11T06:14:22.918699Z 0 [System] [MY-010910] [Server] /usr/libexec/mysqld: Shutdown complete (mysqld 8.0.41) Source distribution.
MySQL не стартует, потому что остался зависший процесс и файл сокета после сбоя питания.
это видно в тексте:
Another process with pid 1118 is using unix socket file Unable to setup unix socket lock fileЭто значит, что MySQL думает, что он уже запущен, потому что файл
/var/lib/mysql/mysql.sock и PID-файл остались после аварийного отключения.Как это решить вы уже наверное поняли сами, если нет , вот последовательность действий:
1) Останавливаем Mysql
systemctl stop mysqld
2) Проверяем остались ли процессы MySQL в системе
ps aux | grep mysqld
3) Если видим что весит процесс mysqld “убиваем” его
kill -9 <PID>
4) удаляем все файлы пиды и соксы
rm -f /var/lib/mysql/mysql.sock
rm -f /var/lib/mysql/*.pid
5) Запускаем Mysql
systemctl start mysqld
6) проверяем что все запустилось
systemctl status mysqld
и на выходе получаем
[root@appliance mysql]# systemctl status mysqld
● mysqld.service - MySQL 8.0 database server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/mysqld.service.d
└─override.conf
Active: active (running) since Mon 2025-08-11 09:30:10 MSK; 2s ago
Process: 1150 ExecStopPost=/usr/libexec/mysql-wait-stop (code=exited, status=0/SUCCESS)
Process: 1453 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS)
Process: 1372 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SUCCESS)
Process: 1347 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)
Main PID: 1409 (mysqld)
Status: "Server is operational"
Tasks: 38 (limit: 50660)
Memory: 471.4M
CGroup: /system.slice/mysqld.service
└─1409 /usr/libexec/mysqld --basedir=/usr
Aug 11 09:30:09 appliance systemd[1]: Starting MySQL 8.0 database server...
Aug 11 09:30:10 appliance systemd[1]: Started MySQL 8.0 database server.
и замечательную картинку в админке

mysqlcheck -A –auto-repair -u root -p









Добавить комментарий