解决两个MySQL5.7报错

目录

遇到两个mysql报错:

1.启动不了MySQL,报错缺少MSVCR120.dll

2.启动报错:

本地计算机 上的 mysql 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止
Fatal error: Can't open and lock privilege tables: Table 'mysql.XXX'

doesn't exist

1.启动不了MySQL,报错缺少MSVCR120.dll

第一个问题比较好解决,找一下 C:\Windows\System32 下面,肯定没有 MSVCR120.dll文件

我是修复后才有的

缺少文件的话去同事那借一个,

或者

去官网下载vcredist_x64.exe

官网:https://www.microsoft.com/zh-CN/download/details.aspx?id=40784

根据电脑位数下载vcredist_x64.exe或vcredist_x32.exe

运行安装

进入管理员CMD

然后切换至你的mysql下的bin目录下,输入mysqld-install,运行安装成功,然后去重启MySQL即可

第一个问题解决,如果你重新启动的时候,没有下面的问题请忽略

2.本地计算机 上的 mysql 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止,Fatal error: Can't open and lock privilege tables: Table 'mysql.XXX' doesn't exist

我以为就好了,哪知道去启动MySQL 根本启动不了,报错:

本地计算机 上的 mysql 服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止

最终通过cmd输入eventvwr,打开事件查看器找到了一个错误

双击查看内容,

报错:

bash 复制代码
Fatal error: Can't open and lock privilege tables: Table 'mysql.XXX' doesn't exist

在网上发现很多mysql.XXX,比如mysql.user ,mysql.host等,其实都是一类问题

就是确少了文件

具体来讲是MySQL安装目录下,缺少了这两个文件:

mysql和performance_schema

第一种方法就是去同事那借,或者电脑上找

我也是通过跟同事借的,或者你通过everything看看能不能搜到,然后拷贝到data目录下,再次尝试启动mysql服务

第二种就是通过初始化

参考:https://blog.csdn.net/m0_67393593/article/details/125349318

如果你的同事关系不好,或者你是个i人就用下面的方法:

先清空data目录,注意是清空不是删除,建议做好备份

然后运行初始化命令mysqld --initialize,等一会data就有东西了

但是这时候初始化的用户密码是随机的,

需要去data目录下,找到.err文件来找密码

打开后搜索password

后面就是root用户的随机密码,也可以用,如果觉得不方便可以进行重置


终于tmd成功了

差点就想重装了的


希望对你有帮助

喜欢的话来个三连感谢

相关推荐
_星辰大海乀20 分钟前
表的设计、聚合函数
java·数据结构·数据库·sql·mysql·数据库开发
数据库幼崽4 小时前
MySQL 8.0 OCP 1Z0-908 131-140题
数据库·mysql·ocp
爱编程的小新☆5 小时前
【MySQL】数据库三大范式
数据库·mysql
随心............5 小时前
MySQL的触发器
数据库·mysql
GUIQU.5 小时前
【MySQL】项目实践
数据库·mysql·项目实践
dddaidai12315 小时前
分布式ID和分布式锁
redis·分布式·mysql·zookeeper·etcd
lyw20561915 小时前
MySQL八股(自用)
数据库·mysql
默心19 小时前
centos7部署mysql5.7
linux·运维·mysql·centos
不穿铠甲的穿山甲20 小时前
MySQL-数据库分布式XA事务
数据库·分布式·mysql
飞天红猪侠c21 小时前
MySQL-逻辑架构
数据库·mysql