起因&情景:

朋友正在操作数据库,然后电脑突然死机,再重启电脑后启动数据库服务报:

然后朋友尝试各种操作都没有办法正常启动,

一、网上解决方案:(先别操作)

1 删掉:安装目录\\MySQL Server 8.0\data 下文件,保留文件夹;

2 执行:MySQL Server 8.0\bin下面执行下面命令:

##删除mysql80服务

1) MySQL Server 8.0\bin>sc delete mysql80

##初始化MYsql,并且默认密码为空

2)MySQL Server 8.0\bin>.\mysqld.exe --initialized -insecure

##安装Mysql服务

3)MySQL Server 8.0\bin>.\mysqld.exe --install

##重启服务

4)MySQL Server 8.0\bin>net start mysql

二:自己解决方案

重点:1 无论任何操作,都应该先备份自己的文件;不然执行网上的代码,可能直接删掉自己的数据就很难受了。也不好找回来。

2 data第一步删掉,就会将自己的库表所有全部删掉了,即使初始化,那也是重新安装场景的mysql了。

3 上面的服务由 MYSQL80 变成 MySql

4 启动后好像自己的服务也不指向自己配置的 my.ini 配置文件了什么情况?原来的密码登录不了。使用无密码登录查看表也是空的;

初始化登录后没密码:MySQL Server 8.0\bin>.\mysql.exe -uroot mysql

自己的数据好像不见了;一切重来


解决方案:(不动data文件)

##删除mysql80服务

1) MySQL Server 8.0\bin>sc delete mysql80

##初始化MYsql,并且默认密码为空

2)MySQL Server 8.0\bin>.\mysqld.exe --initialized -insecure

##安装Mysql服务

3)MySQL Server 8.0\bin>.\mysqld.exe --install "MySql80" --defaults-file=F:\softinstall\mysqldata\MySQL Server 8.0\my.ini

##重启服务

4)MySQL Server 8.0\bin>net start mysql

如果服务启动成功,可以打开数据库看看了;

MySQL Server 8.0\bin>.\mysql -uroot -p123456

这样试试看看自己的数据库,如果cmd命令行下可以查看,但是用navicat |mysql Wrokbench 这些登录不了,那是另外的登录验证问题了。需要看额外篇;