mysql启动失败的解决招术

前面博文已经提到,因为不小心,不得不重新安装xampp,昨晚试的时候,mysql还是好好的,今天早上居然发现启动不了了。当然先是在xmapp中启动,启动不了。然后转到控制面板->管理工具 ->服务中找到mysql服务,点击启动,报错: 发现系统错误2,系统找不到指定的文件。然后就开始在网上搜各种资料,怎么会找不到文件。这时候就需要做:

(1)点击mysql服务属性,查看下:可执行文件路径是否为你安装sql的正确路径。因为你之前安装过sql,且路径与新安装的mysql的路径不一致的时候,很容易出现路径不对的问题。当然,我现在是已经改过来了。

mysql启动失败的解决招术_第1张图片

如果路径不对,怎么改呢?这时候就需要去注册表中修改image-path。

注册表打开方式:在桌面点击【开始】,搜索框内输入regedit,则可打开注册表管理器。

mysql启动失败的解决招术_第2张图片

然后按照:HKEY_LOCAL_MACHINE-SYSTEM-CurrentControlSet-services-mysql(服务名)-ImagePath,打开imagePath,将路径和默认路径设置正确。笔者设置为:"D:\xampp\mysql\bin\mysqld" --defaults-file="D:\xampp\mysql\bin\my.ini" mysql,实际安装目录:D:\xampp\mysql\bin\mysqld。

mysql启动失败的解决招术_第3张图片

设置完成后,基本就可以正常启动了。

但我还遇到了另外的一个问题:

(2)mysql 异常,错误号1067,无法启动,报错:Could not open mysql.plugin table. Some plugins may be not loaded;然就是各种mysql.user表不存在。看到有人提出在my.ini的[mysqld]下加上skip-grant-tables。这样是可以达到启动的目的的,但这样相当于mysql不设置用户名和密码,安全性还是有问题的,所以不大愿意采用这种方式,没办法,继续探索。

为了更加详细地了解错误原因,打开:控制面板->管理工具->事件管理器,找到mySQL的报错信息。

mysql启动失败的解决招术_第4张图片

点开具体的信息分别为:

Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

Could not open mysql.plugin table. Some plugins may be not loaded

也就是说mysql.user表不存在。 mysl的Data文件夹下有个mysql文件夹内,里面放置些mysql自身配置需要用的数据库(考虑数据库安全时应该涉及),报错信息提醒我们是user数据表不存在。

到mysql的安装目录下一看,果然data下的mysql文件中的数据表都被清除了。果断从安装文件再重新拷贝过来替换掉,再去启动mysql,成功了。


你可能感兴趣的:(PHP,HTML)