错误代码
ERROR 3009 (HY000): Column count of mysql.user is wrong.
原因
错误是由于你曾经升级过数据库,或者说是安装了相比原来更高版本的MySQL,升级\安装完后没有使用mysql_upgrade升级数据结构造成的。
解决方法
使用mysql_upgrade升级数据结构,命令为:
mysql_upgrade -u root -proot
Windows和Linux操作方法都是一样的,如果有修改过默认端口的话,可加-P 端口号
,如图:
C:\Users\永恒>mysql_upgrade -u root -proot -P 3316
mysql_upgrade: [Warning] Using a password on the command line interface can be insecure.
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Checking system database.
mysql.columns_priv OK
mysql.db OK
mysql.engine_cost OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.gtid_executed OK
mysql.help_category OK
mysql.help_keyword OK
mysql.help_relation OK
mysql.help_topic OK
mysql.innodb_index_stats OK
mysql.innodb_table_stats OK
mysql.ndb_binlog_index OK
mysql.plugin OK
mysql.proc OK
mysql.procs_priv OK
mysql.proxies_priv OK
mysql.server_cost OK
mysql.servers OK
mysql.slave_master_info OK
mysql.slave_relay_log_info OK
mysql.slave_worker_info OK
mysql.slow_log OK
mysql.tables_priv OK
mysql.time_zone OK
mysql.time_zone_leap_second OK
mysql.time_zone_name OK
mysql.time_zone_transition OK
mysql.time_zone_transition_type OK
mysql.user OK
Upgrading the sys schema.
Checking databases.
sys.sys_config OK
Upgrade process completed successfully.
Checking if update is needed.