MySQL — Checking for corrupt, not cleanly closed and upgrade needing tables
При перезагрузке MySQL увидел такую надпись:
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..
Пробрало любопытство и решил узнать че эта такое, покапавшись на просторах интернета узнал, что это идет ни как ошибка, а больше как предупреждения. Предупреждения о том что не будет проверяется на наличие поврежденный таблиц, на наличие не закрытых таблиц и наличие не обновленных таблиц, если вы обновили версию MySQL.
В Debian этим занимается скрипт /etc/mysql/debian-start. Открываем его:
$ nano /etc/mysql/debian-start
# The following commands should be run when the server is up but in background
# where they do not block the server start and in one shell instance so that
# they run sequentially. They are supposed not to echo anything to stdout.
# If you want to disable the check for crashed tables comment
# «check_for_crashed_tables» out.
# (There may be no output to stdout inside the background process!)
echo «Checking for corrupt, not cleanly closed and upgrade needing tables.»
(
upgrade_system_tables_if_necessary;
check_root_accounts;
check_for_crashed_tables;
) >&2 &
По умолчанию он отключен. Что дает его включения — будет проводиться проверка и перезапуск будет выполнять медленнее, чем с отключенным скриптом.
Для успокоения своей души можно принудительно проверить вcе таблицы:
$ mysqlcheck --check-upgrade --all-databases --auto-repair -u root -p
или
$ mysql_upgrade --force -u root -
Читаем еще:
- PhpMyAdmin исполнилось 15 лет
- Почтовый сервер — связка Exim + Dovecot + PostfixAdmin
- Скрипт для оптимизация производительности Mysql
- Часто используемые команды для MySQL.
- Резервное копирование (backup) баз MySQL