#!/bin/bash : "${AUTOSYSADMIN_LIB:=/usr/local/lib/autosysadmin}" source "${AUTOSYSADMIN_LIB}/common.sh" || exit 1 source "${AUTOSYSADMIN_LIB}/repair.sh" || exit 1 pre_repair if is_debian_version "8" "<="; then if is_sysvinit_enabled '*mysql*'; then if ! pgrep -u mysql mysqld > /dev/null; then # Save service status before restart timeout 2 mysqladmin status 2>&1 | save_in_log_dir "mysql.before.status" timeout 20 /etc/init.d/mysql restart > /dev/null rc=$? if [ "${rc}" -eq "0" ]; then log_action "Restart mysql: OK" else log_action "Restart mysql: failed" fi # Save service status after restart timeout 2 mysqladmin status 2>&1 | save_in_log_dir "mysql.after.status" else log_abort_and_quit "mysqld process alive. Aborting" fi else log_abort_and_quit "MySQL not enabled. Aborting" fi else if is_debian_version "12" ">="; then service="mariadb.service" service_name="mariadb" else service="mysql.service" service_name="mysql" fi if is_systemd_enabled "${service}"; then if is_systemd_active "${service}"; then log_abort_and_quit "${service} is active, nothing left to do." else # Save service status before restart systemctl status "${service}" | save_in_log_dir "${service_name}.before.status" # Try to restart timeout 20 systemctl restart "${service}" > /dev/null rc=$? if [ "${rc}" -eq "0" ]; then log_action "Restart ${service_name}: OK" else log_action "Restart ${service_name}: failed" fi # Save service status after restart systemctl status "${service}" | save_in_log_dir "${service_name}.after.status" fi else log_abort_and_quit "${service} is disabled (or missing), nothing left to do." fi fi post_repair