windows下安装MySQL步骤,无法启动没有报告任何错误的终极解决方法
windows系统安装mysql
解决问题如下:的终极解决方案
正常安装
输入 net start mysql
提示:
MySQL服务正在启动
MySQL服务无法启动
服务没有报告任何错误
解决方式:分两种情况
1、新用户安装
a、确定你之前进行了如下操作
下载对应的版本(确定下载的是适合你的系统和版本的MySQL)
确定安装目录:
这里面一定要区分三个目录:
安装根目录:就是这个目录里不在有没什么用的下一级目录了,他里面的都是水平级比较有用的内容如bin data lib docs等等
bin目录:放置系统可执行文件的地方
data目录:放置数据库数据的地方。如果刚刚下载的解压文件中没有data,也没关系,下面我们会用命令自动安装。
b、配置环境变量
这一步就是让你方便一些,在任意位置输入命令的时候会上这个环境变量位置中溜达一圈看看有没有对应可以执行的命令。就是把可执行命令的文件夹和根目录文件夹都添加在里面。就是上面提到的目录位置。
c、管理身份运行cmd在bin目录下运行
执行mysqld --initialize-insecure --user=mysql
生成data目录
d、在bin目录下进行MySQL的安装
mysqld -install
e、启动MySQL
net start mysql
在这里就会出现上面描述的问题:
解决方式:
查看根目录(别再问根目录在哪里是什么)中有没有
my.ini配置文件
有的话进行更改,没有的话创建一个TXT文档进行输入以下配置,后将后缀名字改成 my.ini ini保存
[mysql]
#设置mysql客户端默认字符集
default-character-set=UTF8MB4
[mysqld]
#设置3306端口
port=3306
#设置你自己电脑的mysql安装目录
#basedir=C:\Program Files\MySQL\MySQL Server 8.0
basedir=D:\mysql\mysql-8.0.24-winx64
#设置你自己电脑的数据库存放目录
#datadir=C:\Program Files\MySQL\MySQL Server 8.0\data
datadir=D:\mysql\mysql-8.0.24-winx64\data
#设置允许最大连接数
max_connections=200
#服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=UTF8MB4
#创建新表是将使用的默认存储引擎
default-storage-engine=INNODB
2、老用户升级、卸载、重新安装
重复上面abcde
删除data目录
重新执行data目录生成命令
进行操作
3、重点来了:以上情况如果还是解决不了问题的话。终极解决方案来了:
在bin目录下运行cmd
输入:mysqld --console
命令调用错误日志,在data 和bin目录下都可以用命令调用错误日志。看一下提示:
重要的提示都在前面
日志啥意思:告诉你,我们换路子了,配置文件中utf8我们不认,必须用UTF8MB4
更改my.ini中有关于utf8内容替换UTF8MB4
解决:正常了
所以通过分析错误日志,来找到错误的根源,针对解决才是王道。
还有可能:是由于端口占用:网络地址占用等,都在日志文件中有清晰的描述
看日志找问题也是程序劳工必备的技能。
希望对大家有帮助。
查看日志方法:
在bin和data两个目录下都可以输入下面命令
mysqld --console对应不同日志反馈内容
镜像源网站:
Index of /mysql/MySQL-8.0/ (sohu.com)
1、下载完成解压
2、配置环境变量
3、在BIN下以管理员身份运行cmd
这点很重要
4、执行mysqld --initialize-insecure --user=mysql
生成data目录
5、安装mysql在BIN目录下
mysqld -install
6、启动服务在bin目录下
net start mysql
提示启动服务,服务无法启动 服务没有报告任何错误
是因为缺少
mysqld --initialize-insecure
或者缺少my.ini文件
mysqld --initialize --user=mysql --consloe
7、登陆服务
mysql -u root -p
8、查询用户名密码
select host,user,authentication_string from mysql.user;
9、设置密码
use mysql
ALTER USER ‘root’ @‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
保存
flush privileges;
10、退出
quit