MySQL安装问题😭

学jdbc,就先学MySQL,看的廖雪峰教程,
一开始下了最新的MySQL8.3.0,但是他的示例代码运行不起来,后面把8.3.0删了,
跑去下载了5.7.23,按照一篇教程安装,一直不行,mysqld -install没问题,–initialize就一直报错,
又删,又搜教程,还是不行,问问佬怎么解决

这是–initialize报错

2024-04-20 16:45:18 0 [Note] mysqld (mysqld 5.6.51) starting as process 5828 ...
2024-04-20 16:45:18 5828 [ERROR] Can't find messagefile 'E:\Program Files\Mysql\mysql-5.7.27-winx64\share\errmsg.sys'
2024-04-20 16:45:18 5828 [Warning] Can't create test file E:\Program Files\Mysql\mysql-5.7.27-winx64\data\Strix-of-Jack.lower-test
2024-04-20 16:45:18 5828 [Warning] Can't create test file E:\Program Files\Mysql\mysql-5.7.27-winx64\data\Strix-of-Jack.lower-test
mysqld: Can't change dir to 'E:\Program Files\Mysql\mysql-5.7.27-winx64\data\' (Errcode: 2 - No such file or directory)
2024-04-20 16:45:18 5828 [ERROR] Aborting

2024-04-20 16:45:18 5828 [Note] Binlog end
2024-04-20 16:45:18 5828 [Note]```
2 个赞

日志错误不是很明显么

mysqld: Can’t change dir to 'E:\Program Files\Mysql\mysql-5.7.27-winx64\data' (Errcode: 2 - No such file or directory)
去看下这个路径, 是不是少了点什么

1 个赞

没有啊,官网的zip压缩包只解压了,还有里面新建了个my.ini文件,别的就没有动过

1 个赞

他上面说的缺失文件就没存在过啊,是 我电脑名字.lower-test

去E:\Program Files\Mysql\mysql-5.7.27-winx64目录下创建个data目录试试

1 个赞

试试别再放在不带空格的路径

不是专门研究数据库运维的话,可以考虑用docker跑mysql,一般镜像拉下来直接就能跑,不需要折腾环境

新手学习,建议直接 docker 一键安装,省心省力

你直接用docker拉一个mysql的image不就好了

装个phpstudy,一键装mysql,随意切换版本

强烈建议docker,如果是win那么,使用我的笔记吧,5.6 和5.7 差距不算大,基本上差不多
看你的报错,就是路径错误,你看下my.ini里面的路径是不是有问题,

mysql windowns 安装
https://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.40-winx64.zip 下载后解压到e盘,修改为mysql
添加环境变量
在mysql目录下新建my.ini

[mysqld]

#设置MySQL安装路径
basedir = E:/mysql

#设置mysql数据库的数据的存放目录,是data
datadir = E:/mysql/data

#设置数据库连接端口
port = 3306

#设置mysql服务器的字符集
character-set-server=utf8

#设置mysql服务器的默认存储引擎
default-storage-engine=InnoDB
#如果 INNODB 模式如果不能启动,删除data目录下ib开头的日志文件重新启动。


#设置最大连接数
max_connections=1000

#允许临时存放在查询缓存区大小
query_cache_size=0

mysqld -install 进行MySQL的安装,将MySQL注册到系统服务
mysqld --initialize --user=mysql #这种是有安全策略的,会随机生成一个密码,登录后必须要更改,更改的密码有安全策略比如密码长度,密码到期时间等.
mysqld --initialize-insecure --user=mysql #进行MySQL的初始化,生成mysql启动的必要数据,这种初始化是没有密码,没有安全策略的
net start mysql 进行启动mysql服务
mysqladmin -u root -p 默认空密码,进入后进行设置新密码


跟之前一样啊佬

要么Linux上安装,要么docker去安装呀。

WIN不行吗

我也建议用这个

为什么一定用mysql,postgresql不香么

win10使用Ubuntu子系统安装

如何使用 WSL 在 Windows 上安装 Linux
开始使用适用于 Linux 的 Windows 子系统上的数据库
默认密码存在/etc/mysql/debian.cnf

mysql>use msyql;  
#update root's password
# 一定要使用mysql_native_password, 否则命令能连上, 但是springboot连不上
mysql>alter user 'root'@'localhost' identified with mysql_native_password by 'root';  
#write privileges 
mysql>flush privileges;
1 个赞

没有文件?

管理员模式的cmd 执行一下试试,有可能是没权限