我得到以下内容:
Native table 'performance_schema'.'file_instances' has the wrong structure
Native table 'performance_schema'.'cond_instances' has the wrong structure
Native table 'performance_schema'.'rwlock_instances' has the wrong structure
Native table 'performance_schema'.'mutex_instances' has the wrong structure
...
就这样吧 重新启动MySql时出现这些错误。它似乎导致MySql管理员变得不稳定,我得到了很多:
"MySQL server has gone away"
答案 0 :(得分:218)
在shell中尝试以下命令(root用户在这里是mysql root用户,而不是系统root用户)
sudo mysql_upgrade -u root -p
运行此项后,请务必重新启动mysql (评论中的@Mikepote全部归功于此。)
答案 1 :(得分:22)
我的情况是在桌面上运行特定查询时出现。
并且日志中还包含:
缺少系统表mysql.proxies_priv;请运行mysql_upgrade 创造它
我已经运行 mysql_upgrade ,之后问题就消失了。
答案 2 :(得分:14)
我遇到了这个问题,答案在于@Berend de Boer
升级后重启mysql。
[ERROR]Native table performance schema has the wrong structure
答案 3 :(得分:4)
在先前安装的MySQL上安装MySQL时遇到此错误,该安装是在没有性能架构的情况下配置的,或者是可能没有所有当前表的较旧版本的Performance架构。
我在mamp上也遇到过这个问题。要解决它,我执行了以下操作:
cd /Applications/MAMP/bin/
sudo ./upgradeMysql.sh
请记住重启mysql服务器。
您可以阅读Performance Schema Build Configuration了解详情。
答案 4 :(得分:2)
如果数据库是Akonadi(KDE)数据库,上面的内容是不够的。 你需要镜像给你的mysqld的选项,用
检查ps aux | grep mysql
将选项复制到mysql_upgrade命令(我不需要'-u root -p'但你可能会这样做)
mysql_upgrade --defaults-file=/home/USER/.local/share/akonadi/mysql.conf --datadir=/home/USER/.local/share/akonadi/db_data/ --socket=/tmp/akonadi-USER.x0Bvxr/mysql.socket
我真的认为--socket选项是关键。
答案 5 :(得分:0)
尝试mysql_upgrade
,然后重新启动mysql及其后退
答案 6 :(得分:0)
看来这是在您完成升级后发生的。只需重新启动mysql:
就像在CMD中运行以下命令
sudo mysql_upgrade -u root -p
service mysql restart
该错误现在应该已经消失了。
答案 7 :(得分:-7)
显然,由于某种原因,MySQL模式存储被破坏了。这些原因可能是:
information_schema
如果您没有备份,但仍然可以访问数据,请先备份数据,然后执行以下操作:
如果你有备份,那么重新安装MySQL(在此之前完全清除mysql的所有数据),然后导入你的数据。