mysql - InfoSchema 用户丢失
问题描述
我今天早上醒来发现我的数据库出现问题,运行时显示以下错误show databases;
show tables;
ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist
我没有手动升级,所以不确定是什么原因造成的,尝试运行 mysql_upgrade 但它似乎已被弃用。
我尝试使用这些命令手动创建用户,但遇到以下错误;
DROP USER 'mysql.infoschema'@'localhost';
mysql> DROP USER 'mysql.infoschema'@'localhost';
ERROR 1726 (HY000): Storage engine 'MyISAM' does not support system tables. [mysql.user]
mysql>
也值得补充;在过去的 5 天里,我尝试使用我的 VPS 提供商恢复到 5 个备份,但问题仍然存在,所以我只能假设 MySQL 正在自动升级自己?
服务器详情:Server version: 8.0.26-0ubuntu0.20.04.2 (Ubuntu)
任何帮助将不胜感激。
解决方案
尝试强制升级。将 upgrade=FORCE 添加到 mysqld.cnf 并重新启动 Mysql 服务器。
推荐阅读
- ansible - 在任务文件上使用 `vars_prompt`
- javascript - JavaScript:如何使用 fillRect 用 Canvas 绘制多个矩形?
- javascript - 如何在数组中以 5 分钟为间隔获取最后几个小时 - MySQL 时间戳格式?
- mongodb - 如何在 mongo.conf 中设置 internalQueryExecMaxBlockingSortBytes
- android - 如何在点击底部导航时禁用从中心到边缘的灰色动画
- javascript - 链接 redux 连接 mapStateToProps ,以访问 mapDispatchToProps 中的道具
- listbox - 双击 QTP 中基于窗口的应用程序
- python - 在 CSV 中导入无字段
- java - 在 Java Swing 中更改 JButton 的边框颜色保留插图
- julia - 如何在 julia 中使用 filter!() 作为数组类型?