解决两个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成功了

差点就想重装了的


希望对你有帮助

喜欢的话来个三连感谢

相关推荐
程序员岳焱2 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
梦在深巷、3 小时前
MySQL/MariaDB数据库主从复制之基于二进制日志的方式
linux·数据库·mysql·mariadb
Johny_Zhao4 小时前
Ubuntu系统安装部署Pandawiki智能知识库
linux·mysql·网络安全·信息安全·云计算·shell·yum源·系统运维·itsm·pandawiki
祁思妙想4 小时前
八股学习(三)---MySQL
数据库·学习·mysql
惊骇世俗王某人5 小时前
1.MySQL之如何定位慢查询
数据库·mysql
叁沐5 小时前
MySQL 04 深入浅出索引(上)
mysql
q9085447036 小时前
MySQL 二进制日志binlog解析
mysql·binlog·binlog2sql·my2sql
码不停蹄的玄黓7 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
帧栈8 小时前
mysql基础(一)快速上手篇
mysql
戒不掉的伤怀11 小时前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql