Было ли какое-то обновление Ubuntu, которое может вызвать такое поведение?

Предыстория: Я запускаю cqpweb, интерфейс запросов к корпусу, написанный на PHP и подключенный к базе данных mysql, на веб-сервере Apache2 под Ubuntu 18.04 LTS. Сервер Ubuntu был настроен с нуля, и в настоящее время нет никаких ручных настроек для mysql или php.

cqpweb работал успешно, если только он не начал выдавать сообщения об ошибках, подобные этому:

 A MySQL query did not run successfully!

 Original query: LOAD DATA LOCAL INFILE '/data2/cqpweb/cach/tab_dist_fycel9oplk' INTO TABLE `db_dist_g2f3ndxf40` FIELDS ESCAPED BY '' /* from User: knappen |
 Function: create_db() | 2019-Apr-25 11:23:01 */

 Error # 0:

Это произошло за одну ночь. Подобные запросы определенно работали 24 апреля в 17:55 (местное время, часовой пояс Берлина) и были прерваны в момент, указанный в сообщении об ошибке.

Вопрос: Было ли какое-то автоматическое обновление или обновление, которое может вызвать такое поведение.

Дополнительная информация:

php --version
PHP 7.2.17-0ubuntu0.18.04.1 (cli) (built: Apr 18 2019 14:12:38) ( NTS )

mysql --version
mysql  Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using  EditLine wrapper

Проверка некоторых соответствующих файлов журналов:

/var/log/dkpg.log: нет записей между 2019-04-24 14:47: 54 и 2019-04-26 06:26:23

/var/log/apt/history.log: нет записей между 2019-04-24 14:47:54 и 2019-04-26 06:26:23

[ 1119] /var/log/unattended-upgrades/unattended-upgrades.log:

2019-04-25 06:24:53,776 INFO Initial blacklisted packages: 
2019-04-25 06:24:53,778 INFO Initial whitelisted packages: 
2019-04-25 06:24:53,778 INFO Starting unattended upgrades script
2019-04-25 06:24:53,778 INFO Allowed origins are: o=Ubuntu,a=bionic, o=Ubuntu,a=bionic-security, o=UbuntuESM,a=bionic
2019-04-25 06:24:57,138 INFO No packages found that can be upgraded unattended and no pending auto-removals

Дополнительные выводы:

Форма /var/log/apache2/error.log:

[Thu Apr 25 06:25:03.544172 2019] [mpm_prefork:notice] [pid 1244] AH00171: Graceful restart requested, doing restart

Этот перезапуск происходит из-за cron, выполняющая скрипт /etc/cron.daily/apache2. Таким образом, может произойти изменение, влияющее на то, что Apache2 установлен раньше, но станет активным в одночасье в критический интервал времени.

Смежный вопрос, исключающий другие потенциальные причины, такие как ограничения размера: Каковы ограничения по размеру для mysql в Ubuntu 18.04 и как их увеличить?

РЕДАКТИРОВАТЬ: Так как есть ежедневная работа cron, перезапускающая Apache2, вот некоторые изменения с history.log между 2019-04-24 06:25:00 и 2019-04-25 06:25: 00

Start-Date: 2019-04-24  06:52:06
Commandline: /usr/bin/unattended-upgrade
Upgrade: distro-info-data:amd64 (0.37ubuntu0.3, 0.37ubuntu0.4)
End-Date: 2019-04-24  06:52:07

Start-Date: 2019-04-24  14:46:57
Commandline: apt-get upgrade
Requested-By: knappen (1000)
Upgrade: php7.2-common:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), php7.2-cli:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), ureadahead:amd64 (0.100.0-20, 0.100.0-21), linux-libc-dev:amd64 (4.15.0-47.50, 4.15.0-48.51), libsystemd0:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), php7.2-mysql:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), language-selector-common:amd64 (0.188.1, 0.188.2), udev:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), plymouth-theme-ubuntu-text:amd64 (0.9.3-1ubuntu7.18.04.1, 0.9.3-1ubuntu7.18.04.2), php7.2-json:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), php7.2-opcache:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), linux-signed-generic:amd64 (4.15.0.47.49, 4.15.0.48.50), libudev1:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), libplymouth4:amd64 (0.9.3-1ubuntu7.18.04.1, 0.9.3-1ubuntu7.18.04.2), python3-distupgrade:amd64 (1:18.04.30, 1:18.04.31), ubuntu-release-upgrader-core:amd64 (1:18.04.30, 1:18.04.31), systemd-sysv:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), php7.2-readline:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1), libpam-systemd:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), systemd:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), libnss-systemd:amd64 (237-3ubuntu10.20, 237-3ubuntu10.21), plymouth:amd64 (0.9.3-1ubuntu7.18.04.1, 0.9.3-1ubuntu7.18.04.2), libapache2-mod-php7.2:amd64 (7.2.15-0ubuntu0.18.04.2, 7.2.17-0ubuntu0.18.04.1)
End-Date: 2019-04-24  14:47:54
1
задан 30 April 2019 в 15:07

1 ответ

С помощью Стефана Эверта и Эндрю Харди из списка рассылки cwb, причина странного поведения найдена, и проблема устраняется путем установки следующей конфигурации в /etc/php/7.2/apache2/php.ini

; Allow accessing, from PHP's perspective, local files with LOAD DATA statements
; http://php.net/mysqli.allow_local_infile
mysqli.allow_local_infile = On

. 18 апреля значение по умолчанию было тихо изменено при переходе с PHP 7.2.15 на PHP 7.2.17 и перенесено в дистрибутив Ubuntu.

Более подробную информацию и некоторые внутренние альтернативы cqpweb можно найти в этой публикации в списке рассылки CWB.

. ПРИМЕЧАНИЕ ДОБАВЛЕНО: В следующих версиях PHP будет выдано сообщение об ошибке с информативным сообщением об ошибке описанные условия см. в PHP :: Bug # 77956

.
0
ответ дан 30 April 2019 в 15:07

Другие вопросы по тегам:

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