Мне нужно, чтобы машина выполняла php скрипт в фоновом режиме с ограничением по CPU. Запускаю в таком виде: nohup php -f /var/www/website/script.php based10 10000000000 > based10.log 2>&1 & cpulimit -p 1491 -l 60 -b
В какой-то момент (10, 20, 30 минут) скрипт перестаёт работать. До этого скрипт проработал 58 дней без ошибок, затем была перезагрузка системы. После перезагрузки скрипт был запущен снова, но через 20 дней упал с ошибкой:
nohup: ignoring input
123PHP Fatal error: Uncaught PDOException: SQLSTATE[08S01]: Communication link failure: 1053 Server shutdown in progress in /var/www/website/script.php:62
Stack trace:
#0 /var/www/website/script.php(62): PDOStatement->execute()
#1 {main}
thrown in /var/www/website/script.php on line 62
<br />
<b>Fatal error</b>: Uncaught PDOException: SQLSTATE[08S01]: Communication link failure: 1053 Server shutdown in progress in /var/www/website/script.php:62
Stack trace:
#0 /var/www/website/script.php(62): PDOStatement->execute()
#1 {main}
thrown in <b>/var/www/website/script.php</b> on line <b>62</b><br />
на 62 строке находится обращение к БД: $stmt->execute([$data]);
Сейчас скрипт падает без ошибки. Просто перестаёт работать и всё.
В based10.log пусто. В mysql/error.log пусто.
Где мне ловить ошибку и понять, в чём причина падения скрипта?