Linux下Mysql提示“Table ‘mysql.servers‘ doesn‘t exist“错误

问题
今天在部署一套基于python的程序,使用的mysql版本为5.7,我使用的是RPM安装包,安装完成后进入mysql命令控制台,不管输入 flush privileges 还是 输入创建表 等操作,提示Table ‘mysql.servers‘ doesn‘t exist“,随即通过show tables查看 是否有servers表存在,发现表其实是存在的。
网上搜索答案都是千篇一律,文章内容都完全一样,基本就是这个抄那个,没有可行的解决方案。
下面给出其他人给出的解决方案,但并未解决我的问题:
解决方案一,更新修复表:
更新修复表
use mysql;

source mysql_fix_privilege_tables.sql;

flush privileges;

解决方案二,创建表:
use mysql;
CREATE TABLE servers (
Server_name char(64) NOT NULL,
Host char(64) NOT NULL,
Db char(64) NOT NULL,
Username char(64) NOT NULL,
Password char(64) NOT NULL,
Port int(4) DEFAULT NULL,
Socket char(64) DEFAULT NULL,
Wrapper char(64) NOT NULL,
Owner char(64) NOT NULL,
PRIMARY KEY (Server_name)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

上面给出的解决方案大家可自行尝试,我的问题无法解决,原因在于我的servers表是存在的,所以这里我们先删除表再创建:
drop table if exists mysql.servers;

然后按照方案二生成表解决。

出现问题的原因:

我这里是因为mysql安装完成后删除了data数据表造成的,其他原因也有可能是升级了Mysql或者未卸载进行了重新安装导致的。

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值