精准找到Navicat无法连接数据库的原因

navicat无法连接本地数据库,导致的原因有好几种,部分博主的解决过程只解决了本机的问题,但并不适用于大众的广泛问题。
下面介绍利用日志发现自己属于哪种问题。

一 查看mysql是否正在运行

打开“运行”,输入services.msc
精准找到Navicat无法连接数据库的原因_第1张图片
mysql没有显示“正在运行”,尝试点击右键,点击启动
精准找到Navicat无法连接数据库的原因_第2张图片
但是本机运行失败
随后报错:
Windows 无法启动MySql服务 (位于 本地计算机上)
错误1067

二 查看日志

此前尝试过网上的修改注册表等方法,但注册表根本一直没有变过,所以没什么用。
精准的方法是查看计算机日志,看看报错的具体内容。
打开 计算机管理 =》 事件查看器

精准找到Navicat无法连接数据库的原因_第3张图片
双击mysql字段,可以看到具体时间的具体报错日志,如下图红色方框区域。
Can’t open and lock privilege tables: Table ‘mysql.db’ doesn’t exist就是我的出错的原因,我搜索此字段,查找解决方法,便立刻解决了问题。
精准找到Navicat无法连接数据库的原因_第4张图片
其他同仁可以根据自己的问题,可以自行搜索网上搜索红色区域内容,寻找对应解决方法。

三 解决db文件缺失

我的报错内容是:
Can’t open and lock privilege tables: Table ‘mysql.db’ doesn’t exist
错误原因:
误删除了db文件,即db.frm ,db.MYD ,db.MYI
解决方法:
寻找这三个文件并拷贝进去重启服务即可。
我将原mysql的压缩包重新解压作为副本,然后搜索db文件,如下图,复制到我的原mysql的data文件夹里
精准找到Navicat无法连接数据库的原因_第5张图片
之后问题就解决了,navicat可以正常连接到数据库。

你可能感兴趣的:(bug,数据库,mysql,database)