MySQL8.0.17安装成功后,windows10系统下进入cmd命令控制台,输入mysql启动命令报“服务名无效/服务无法启动”的错误,比如:

启动mysql命令 mysqld mysql8.0启动命令_MySQL


启动mysql命令 mysqld mysql8.0启动命令_启动mysql命令 mysqld_02

解决方法、找到要开启服务的正确服务名

1、开始栏,输入服务

启动mysql命令 mysqld mysql8.0启动命令_数据库_03


2、找到MySQL服务,双击查看正确的服务名,手动启动和停止MysQL服务

启动mysql命令 mysqld mysql8.0启动命令_mysql_04


3、或者在CMD窗口输入MySQL的正确服务名

启动mysql命令 mysqld mysql8.0启动命令_MySQL_05

如果以上的方法还不能解决,输入mysql启动命令报“服务无法启动”的错误:

启动mysql命令 mysqld mysql8.0启动命令_mysql_06


解决方法:

1、先进入mysql的安装目录,删除data文件夹

启动mysql命令 mysqld mysql8.0启动命令_mysql_07


2、删除mysql服务

开始栏输入cmd以管理员身份进入

删除mysql服务,输入如下命令: sc delete MySQL(服务名,可以自己打开计算机管理查看服务名,默认MySQL)

启动mysql命令 mysqld mysql8.0启动命令_数据库_08


3、重启电脑

4、重启之后,以管理员身份进入cmd控制台,切换到mysql的安装目录bin下,依次输入以下命令:

4.1 mysqld --initialize-insecure(无密码)

初始化mysql的默认配置

//mysqld --initialize(随机密码)最后不要用此命令初始化,会导致后面进不去mysql后台

启动mysql命令 mysqld mysql8.0启动命令_MySQL_09


4.2 mysqld -install

安装mysqld作为window服务 自动启动

启动mysql命令 mysqld mysql8.0启动命令_MySQL_10


4.3 net start mysql

启动mysql就可以了

启动mysql命令 mysqld mysql8.0启动命令_mysql_11


这时mysql已经能够在windows控制台正常启动和关闭了但是因为前面我们通过初始化的操作重新设置了mysql的默认配置,修改了mysql的加密规则为默认的第一种加密方式,我们在安装MySQL的时候说过,如果使用Navicat连接mysql的话是要选择第二种加密算法。

启动mysql命令 mysqld mysql8.0启动命令_数据库_12


因为mysql8.0之前的版本中加密规则是mysql_native_password,而在mysql8.0之后,加密规则是caching_sha2_password。此时我们通过navicat连接mysql的时候会报错

启动mysql命令 mysqld mysql8.0启动命令_启动mysql命令 mysqld_13


解决方法:

1、进入mysql后台,修改加密规则

输入以下语句:

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;

//password为之前设置的数据库密码

因为前面初始化时设置的为免密码,因此可参考如下操作

启动mysql命令 mysqld mysql8.0启动命令_启动mysql命令 mysqld_14


2、修改用户密码

ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;

//password为新设置的root账户密码

启动mysql命令 mysqld mysql8.0启动命令_mysql_15


3、刷新权限

FLUSH PRIVILEGES;

启动mysql命令 mysqld mysql8.0启动命令_启动mysql命令 mysqld_16


在navicat客户端输入刚修改后的密码,进行测试。

启动mysql命令 mysqld mysql8.0启动命令_启动mysql命令 mysqld_17