Mysql-问题:1146 - Table 'xxx' doesn't exist

MySQL版本:5.7.28
操作系统:Win7 32位

问题描述:
因为重装系统,重新安装数据库后,用 Navicat Premium 12 打开数据库弹出提示框:
1146 - Table ‘performance_schema.session_variables’ doesn’t exist。

原因:
1、数据库的系统表丢失
2、或者用户自己的某个数据库文件夹丢失
大致是因为由于重新安装mysql,导致data文件夹更新后无法导入data数据包中的数据库。
主要是缺少data目录下mysql导致,mysql库没有拷贝过去?

解决方法:
所幸的是,另外一台电脑上有相同版本的备份文件。
我这里提示的是缺少“performance_schema”,所以:
第一种方法:
直接复制之前的mysqlperformance_schema 这2个文件夹到现有的数据库data目录下,然后重启数据库,问题解决!

另外一种错误:
1146 - Table ‘mysql.proc’ doesn’t exist。

解决方法:
复制 data/mysql/proc.frm, proc.MYD, proc.MYI 三个文件到你现有的数据库data/mysql/ 目录下,然后重启数据库。
在这里插入图片描述
在这里插入图片描述
Navicat Premium 打开数据库一切正常了:
在这里插入图片描述
另外几种方法:
1、打开终端进入mysql/bin目录下执行命令:
mysql_upgrade -u root -p --force
(此方法我用了,没有用,大神们可以解释为什么没有用吗?谢谢!)

2、从其它相同版本的mysql数据库导出 proc 的数据通过命令行导入进去。
建议:要常备份数据库!切记!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值