MariaDB - ERROR Incorrect definition of table

  • Останнє оновлення: 3 Квітня 2024 р.
  • Перегляди: 23
  • Автор: Адмін
MariaDB - ERROR Incorrect definition of table

Колеги всім привіт.

У сьогоднішній статті ми поговоримо про поширену помилку, яка трапляється в MariaDB.

 

Після оновлення бази даних може виникнути така помилка в лог файлах:

[ERROR] Incorrect definition of table mysql.column_stats: expected column 'hist_type' at position 11 to have type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB','JSON_HB'), found type enum('SINGLE_PREC_HB','DOUBLE_PREC_HB').
[ERROR] Incorrect definition of table mysql.column_stats: expected column 'histogram' at position 12 to have type longblob, found type varbinary(255).

Така помилка трапляється не дуже часто, але іноді трапляється, а саме в той момент коли ви оновили базу даних.

Іноді навіть буває, що після такої помилки ваша база даних може не запуститися, тоді варіантів більше не залишається, а тільки відновлювати базу даних з останньої резервної копії.

 

Щоб вирішити цю проблему, потрібно запустити утиліту mysql_upgrade.

$. mysql_upgrade -u root -p

 

Якщо ви оновлювали версію бази даних з 10.4.6, утиліта буде називатися mariadb-upgrade.

$. mariadb-upgrade -u root -p

 

Утиліту потрібно запускати на запущеній базі даних. Запускати утиліту потрібно від того облікового запису, який має адміністративні права. Утиліта це інструмент, який перевіряє та оновлює ваші таблиці до останньої версії. 

Перед запуском рекомендується зробити резервну копію всіх баз даних.

Утиліта перевірить усі системні таблиці та оновить їх до останньої версії, займає це за часом кілька секунд.


 

Всім дякую, я сподіваюся, що вам моя стаття хоч чимось допомогла.

 

СХОЖІ СТАТТІ

Встановлення mariadb centos 8
MariaDB - як перевірити версію бази даних
Mariadb блокування та розблокування акаунта
MariaDB mysqldump - резервне копіювання зі стисненням bzip2