mysql 打不开表_一个误操作,导致mysql所有表打不开,我是不是应该删库跑路?...

一个误操作,导致mysql所有表打不开,我是不是应该删除跑路?

最为一个net狗,对mysql不是很熟悉。一个项目用的mysql。之前用的root,这个用户权限太大,现在又建一个库,准备再新建一个用户,给相应的权限。然后开始操作:

c056b30773507900a15dde05ff476f1d.png

我发现Navicat for MySQL ,这个可视化工具,可以新建账号并设置权限,太好了,就用这个,找到了msssql 的感觉,一顿操作,新账号建好了,然后,发现,所有的 表打不开了,报这个错误:

a8da3a6d1af8eec60b7a1a8eacaae96b.png

惨了。开始百度,谷歌,这个是什么问题,怎么解决。

尝试了很多种方法,都是要去修改mysql.user,但是我mysql.user 都打不开了,去服务器用命令行,sql语句一样打不开,问题严重了。

最后找到一个解决方法,

1、cmd下 E:\mysql\mysql-8.0.18-winx64\mysql-8.0.18-winx64\bin  下,先用mysql安全启动,跳过账号权限一系列的检测:由于mysqld –skip-grant-tables实测在mysql8.0中已失效,现使用mysqld --console --skip-grant-tables --shared-memory ,这句是关键。

2、在打开一个cmd,直接输入 mysql,回车,进去了,熟悉的尖括号回来了,然后use mysql;   select * from user where user='root' 查询root 的权限,结果发现全部是Y,除了 Select_priv` ='N' ,好了,修改这个值:update user set `Select_priv` ='Y' where user='root'

3、关闭第一个cmd,然后在第二个cmd里面正常启动mysql:net start mysql

打开Navicat for MySQL,打开表又正常了,反思一下,感觉应该是这个地方手误 取消了勾选,然后保存了。

9a553f893503d4edb3b5894e672f712c.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值