当前位置:主页 > 数据库 > Mysql >

mysql 5.7安装 MySQL 服务无法启动但是服务没有报告任何错误

时间:2021-07-12 13:29:38 | 栏目:Mysql | 点击:

MySQL 5.7的安装有两种方式,一种是下载安装程序,点击安装,另一种是下载压缩包,直接解压,配置一下就可以运行了

个人更喜欢压缩包的形式,所以本文记录的也是压死包形式的安装(配置)

https://dev.mysql.com/downloads/mysql/

我下载的最新的是 mysql-5.7.17-win32.zip

加压到mysql-5.7.17-win32文件夹,后文提到的文件和文件夹都以此为更目录

把bin目录配置到环境变量path的后面

我的是  ;D:\mysql-5.7.17-win32\bin

复制 my-default.ini文件,改名为my.ini

默认文件是全部注释掉的,所以不用管他

直接在后面加上一下的参数

[mysqld]
port=3306
basedir=D:\mysql-5.7.17-win32
datadir=D:\mysql-5.7.17-win32\data
skip-grant-tables 

注意红色路径改成你自己的目录

skip-grant-tables 这个配置项很重要,作用是跳过登录的验证

因为刚安装你不知道用什么帐号登录mysql,以前用过mysql的人可能知道 root帐号,但此时用root登录是不行的

然后打开cmd

执行

mysqld install MySQL --defaults-file="D:\mysql-5.7.17-win32\my.ini"  //删除可以用 mysqld remove ,每次修改my.ini都需要重新安装

成功以后你就可启动mysql

执行

net start mysql  //关闭命令是 net stop mysql

此时会报

MySQL 服务无法启动。服务没有报告任何错误。

你就要执行

mysqld --initialize-insecure

这个命令会在mysql根目录下创建data文件夹

然后再执行

net start mysql

这次就成功了

执行

mysql -u root -p 回车

密码不用输入,直接回车

成功登录mysql

然后

use mysql //进入mysql数据库

设置root密码

update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';

注意 authentication_string 5.7以前是password

如果需要远程客户端连接,可以执行

Grant all on *.* to 'root'@'%' identified by 'root' with grant option;

这样远程就可以连接这个mysql了,否则只能在本地连接

您可能感兴趣的文章:

相关文章