Добавил: Amro   Дата: 10.01.2025 13:14

Можно запускать из консоли, или засунуть в задания cron.


#!/bin/bash

export SYSTEMD_PAGER=''
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Параметры подключения к базе данных
export DB_USER="root"
export DB_PASSWORD="password"

# Получение списка всех баз данных
DATABASES=$(mysql -u$DB_USER -p$DB_PASSWORD -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema|performance_schema|mysql|sys)")

# Проверка и восстановление таблиц во всех базах данных
for DB_NAME in $DATABASES; do
    echo "Repairing database: $DB_NAME"
    mysqlcheck -u$DB_USER -p$DB_PASSWORD --auto-repair --databases $DB_NAME
    echo "Checking database: $DB_NAME"
    mysqlcheck -u$DB_USER -p$DB_PASSWORD --check --databases $DB_NAME
    echo "Optimizing database: $DB_NAME"
    mysqlcheck -u$DB_USER -p$DB_PASSWORD --optimize --databases $DB_NAME
done

 

comments powered by HyperComments