apt-upgrade завершается с ошибкой, но база данных работает
После выполнения apt-upgrade mariadb, возможно, apt показывает ошибку при попытке запуска сервера, но на самом деле база данных запущена и работает, что приводит к тому, что apt остается в незавершенном состоянии.
Например:
# apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 2 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] Setting up mariadb-server-10.1 (10.1.10+maria-1~trusty) ... * Stopping MariaDB database server mysqld ...done. * Starting MariaDB database server mysqld ...fail! invoke-rc.d: initscript mysql, action "start" failed. dpkg: error processing package mariadb-server-10.1 (--configure): subprocess installed post-installation script returned error exit status 1 dpkg: dependency problems prevent configuration of mariadb-server: mariadb-server depends on mariadb-server-10.1 (= 10.1.10+maria-1~trusty); however: Package mariadb-server-10.1 is not configured yet. dpkg: error processing package mariadb-server (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: mariadb-server-10.1 mariadb-server E: Sub-process /usr/bin/dpkg returned an error code (1)
Эта ситуация может возникнуть, если время ожидания для init-скрипта слишком короткое. Например, см. MDEV-9382, ситуацию, где время ожидания составляло 30 секунд, но сервер запускался 48 секунд.
Чтобы решить эту проблему, необходимо увеличить время ожидания. Это можно сделать следующим образом:
- В системах, где systemd не включен/не поддерживается: Время ожидания можно увеличить, установив MYSQLD_STARTUP_TIMEOUT непосредственно в скрипте или через командную строку. В MariaDB 10.1.13 и более поздних версиях init-скрипт также использует /etc/default/mariadb, поэтому его также можно использовать для установки MYSQLD_STARTUP_TIMEOUT для постоянного изменения времени ожидания запуска. Время ожидания по умолчанию было увеличено с 30 с до 60 с в MariaDB 10.1.13.
- В системах, которые поддерживают systemd: Время ожидания запуска можно увеличить, установив параметр TimeoutStartSec systemd.
Контент, воспроизведенный на этом сайте, является собственностью его соответствующих владельцев, и этот контент не проверяется MariaDB заранее. Мнения, информация и мнения, выраженные в этом контенте, не обязательно отражают взгляды MariaDB или любой другой стороны.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/apt-upgrade-fails-but-the-database-is-running/