zoukankan      html  css  js  c++  java
  • MySQL之ERROR 1558 (HY000): Column count of mysql.user is wrong.解决方案

    一、场景

    我本想在MySQL5.7上执行下列语句创建一个新用户:

    CREATE USER "remote"@"%" IDENTIFIED BY "123456"; 
    

    结果却报了如下错误:

    ERROR 1558 (HY000): Column count of mysql.user is wrong. Expected 43, found 42. Created with MySQL 50560, now running 50643. Please use mysql_upgrade to fix this error.
    

    二、解决

    根据报错内容中的Please use mysql_upgrade to fix this error。可知,可以使用mysql_upgrade命令来修复这个问题,于是到MySQL部署的主机上执行下列操作:

    mysql_upgrade -u root -pmypass
    

    耐心等待一系列升级操作(主要升级表对象)完毕,重新执行创建用户语句,结果这次OK了。

    三、原因

    1. 由于MySQL安装后做了升级,核心组件升级成功,但是某些表和其他组件却没有完成升级。
    2. 之前安装了较低版本的MySQL后来卸载了,换成了更高版本版本的,但是某些旧版本的数据文件仍被新版本使用,这就存在数据和软件不完全兼容的问题。
    3. 执行mysql_upgrade命令的主要功能就是升级已存在的所有数据库实例上的表结构。
  • 相关阅读:
    自动化测试知识点汇总(200421)
    Mac_使用allure 生成测试报告
    mac_使用Charles抓取Firefox 链接
    工具列表
    Appium_iOS_Safari测试脚本(2)
    日志学习(一)
    java中==和equals的区别(转)
    jackson使用localdatetime转换json出现问题
    js复习--基础
    复习下CSS-零碎要点
  • 原文地址:https://www.cnblogs.com/JaxYoun/p/12372939.html
Copyright © 2011-2022 走看看