MySQL之ERROR 1558 (HY000): Column count of mysql.user is wrong.解决方案
2024-10-08 06:39:49
一、场景
我本想在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了。
三、原因
- 由于MySQL安装后做了升级,核心组件升级成功,但是某些表和其他组件却没有完成升级。
- 之前安装了较低版本的MySQL后来卸载了,换成了更高版本版本的,但是某些旧版本的数据文件仍被新版本使用,这就存在数据和软件不完全兼容的问题。
- 执行mysql_upgrade命令的主要功能就是升级已存在的所有数据库实例上的表结构。
最新文章
- ATM-PROGRAM 关于Proprties的问题
- Linux cp命令使用说明
- BZOJ4556: [Tjoi2016&;Heoi2016]字符串
- Json工具类,实现了反射将整个Object转换为Json对象的功能,支持Hibernate的延迟加
- 面向对象的JavaScript系列二,继承
- U6会计科目导入致对账不平
- python_pycharm介绍1
- 在你的网站实现qq登陆(php)
- Java Web项目(Extjs)报错三
- RDIFramework.NET V3.3 WinForm版新增日程管理功能模块
- BZOJ4668: 冷战 [并查集 按秩合并]
- 在Linux服务器上使用Vbox安装虚拟机
- linux学习第十六天 (Linux就该这么学)
- java8 Stream的实现原理 (从零开始实现一个stream流)
- IIS6 2.0 4.0 冲突解决 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\xxx' -- 'Access is denied. '
- Delphi 集合和字符串互转
- vue.js路由vue-router
- QT学习笔记8:QDir类及其用法总结
- JQuery攻略(五)表单验证
- 来设置IE兼容模式
热门文章
- Codeforces Round #615 (Div. 3) 题解
- [bzoj4569] [loj#2014] [Scoi2016] 萌萌哒
- 「 从0到1学习微服务SpringCloud 」11 补充篇 RabbitMq实现延迟消费和延迟重试
- python类型-序列-元组
- hadoop中两种上传文件方式
- SpringBoot系列教程之事务传递属性
- halfcheetch win10
- day05【数组】
- java容器(二) Map类框架图解
- Leetcode 题目整理-5 Valid Parentheses &; Merge Two Sorted Lists