1706
MariaDBERRORCommonSystem TablesHIGH confidence

Column count of mysql.* table is wrong; please run mysql_upgrade

Production Risk

High — many server operations fail until system tables are upgraded.

What this means

A MySQL system table has fewer or more columns than the current server version expects. This typically occurs after an upgrade when mysql_upgrade has not been run.

Why it happens
  1. 1MySQL server was upgraded but mysql_upgrade was not executed.
  2. 2System tables were manually altered.
How to reproduce
trigger — this will error
trigger — this will error
-- Observed when querying system tables after an in-place upgrade.

expected output

ERROR 1706 (HY000): Column count of mysql.user is wrong. Expected 45, found 43. The table is probably corrupted.

Fix

Run mysql_upgrade

Run mysql_upgrade
-- From the OS shell:
mysql_upgrade -u root -p
-- Then restart MySQL.

Why this works

mysql_upgrade adds missing columns and updates system table definitions to match the new server version.

What not to do

Sources
Official documentation ↗

MySQL 8.0 — 1706 ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE_V2

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All MariaDB errors