Windows上同时安装两个不同版本的MySQL

前言

已安装MySQL5,然后安装MySQL8版本的

安装MySQL参考:

windows 同时安装 MySQL5 和 MySQL8 版本_mysql 8.0 和5.0可以同时安装吗-优快云博客

下载MySQL8msi出现的问题

检查Log,发现是初始化失败,如下:

Attempting to run MySQL Server with --initialize-insecure option...

Starting process for MySQL Server 8.4.0...

Starting process with command: D:\work\MySQL8\MySQL Server 8.4\bin\mysqld.exe --defaults-file="C:\ProgramData\MySQL\MySQL Server 8.4\my.ini" --console --initialize-insecure=on --lower-case-table-names=1...

mysqld: Can't create directory 'D:\work\MySQL8\MySQL Server 8.4\ProgramData\Data\' (OS errno 2 - No such file or directory)

MySQL Server Initialization - start.

D:\work\MySQL8\MySQL Server 8.4\bin\mysqld.exe (mysqld 8.4.0) initializing of server in progress as process 4676

The designated data directory D:\work\MySQL8\MySQL Server 8.4\ProgramData\Data\ is unusable. You can remove all files that the server added to it.

Aborting

MySQL Server Initialization - end. Process for mysqld, with ID 4676, was run successfully and exited with code 1. Failed to start process for MySQL Server 8.4.0.

Database initialization failed.

Ended configuration step: Initializing database (may take a long time)

错误消息表明,MySQL服务器初始化过程失败,因为它无法创建数据文件的目录。它尝试使用的目录路径不存在。

为了解决这个问题,需要执行以下操作(依据实际路径):

  1. 检查路径 D:\work\MySQL8\MySQL Server 8.4\ProgramData\Data\ 是否正确。如果不正确,需要更正它。
  2. 确保父目录 D:\work\MySQL8\MySQL Server 8.4\ProgramData\ 存在。如果不存在,需要手动创建它。


以下是纠正问题的步骤:

  • 打开Windows资源管理器或命令提示符。
  • 导航到 D:\work\MySQL8\MySQL Server 8.4\。
  • 检查 ProgramData 文件夹是否存在。如果不存在,创建一个名为 ProgramData 的新文件夹。
  • 在 ProgramData 文件夹内,创建一个名为 Data 的新文件夹。
  • 同目录下,创建my.ini 配置文件,并且配置文件中有正确的 datadir 值指向刚刚创建的 Data 目录
  • 创建必要的目录后,再次尝试执行选项运行MySQL服务器初始化。

my.ini:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3308端口
port = 3308
# 设置mysql的安装目录
basedir=D:\work\MySQL8\MySQL Server 8.4
# 设置mysql数据库的数据的存放目录(自动生成,不然可能报错)
datadir=D:\work\MySQL8\MySQL Server 8.4\ProgramData\data
# 允许最大连接数
max_connections=10000
# 允许最大连接人数
max_user_connections=1000
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 
# 连接时间一年
wait_timeout=31536000
interactive_timeout=31536000

最后,以管理员身份在命令提示符进行验证

在任务管理器中可看到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值