MySQL8.0.17安装成功后,windows10系统下进入cmd命令控制台,输入mysql启动命令报“服务名无效/服务无法启动”的错误,比如:
解决方法、找到要开启服务的正确服务名
1、开始栏,输入服务
2、找到MySQL服务,双击查看正确的服务名,手动启动和停止MysQL服务
3、或者在CMD窗口输入MySQL的正确服务名
如果以上的方法还不能解决,输入mysql启动命令报“服务无法启动”的错误:
解决方法:
1、先进入mysql的安装目录,删除data文件夹
2、删除mysql服务
开始栏输入cmd以管理员身份进入
删除mysql服务,输入如下命令: sc delete MySQL(服务名,可以自己打开计算机管理查看服务名,默认MySQL)
3、重启电脑
4、重启之后,以管理员身份进入cmd控制台,切换到mysql的安装目录bin下,依次输入以下命令:
4.1 mysqld --initialize-insecure(无密码)
初始化mysql的默认配置
//mysqld --initialize(随机密码)最后不要用此命令初始化,会导致后面进不去mysql后台
4.2 mysqld -install
安装mysqld作为window服务 自动启动
4.3 net start mysql
启动mysql就可以了
这时mysql已经能够在windows控制台正常启动和关闭了但是因为前面我们通过初始化的操作重新设置了mysql的默认配置,修改了mysql的加密规则为默认的第一种加密方式,我们在安装MySQL的时候说过,如果使用Navicat连接mysql的话是要选择第二种加密算法。
因为mysql8.0之前的版本中加密规则是mysql_native_password,而在mysql8.0之后,加密规则是caching_sha2_password。此时我们通过navicat连接mysql的时候会报错
解决方法:
1、进入mysql后台,修改加密规则
输入以下语句:
ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;
//password为之前设置的数据库密码
因为前面初始化时设置的为免密码,因此可参考如下操作
2、修改用户密码
ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
//password为新设置的root账户密码
3、刷新权限
FLUSH PRIVILEGES;
在navicat客户端输入刚修改后的密码,进行测试。