【环境搭建】windows下MySQL8与5共存

发布于:2024-06-27 ⋅ 阅读:(22) ⋅ 点赞:(0)

一、安装MySQL8

1.官网下载

下载地址
我下载的都为zip格式的免安装版。
在这里插入图片描述

在这里插入图片描述
下载完解压到自己指定位置,后期解压路径需要用的

2.初始化mysql文件夹中my.ini文件

在bin同级创建my.ini文件
在这里插入图片描述
设置相关内容,必须注意basedir和datadir这两个参数,port 如果设置3306那么下一个mysql5就不能使用3306了

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=复制你解压的路径  例如C:\wamp-all\mysql\bin(必须含有bin目录)
# 设置mysql数据库的数据的存放目录
datadir=复制你解压的路径\data(创建data文件夹,data自己打,必须含有data,可以不含bin目录)例如C:\wamp-all\mysql\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

3.初始化data文件夹,并记录初始密码

注意:win进入cmd,此时cmd需要以管理员身份运行,否则无法创建data文件夹!!!

在这里插入图片描述
命令行切换到对应mysql解压目录下的bin目录中
在这里插入图片描述

执行如下命令

mysqld --initialize --console

在这里插入图片描述
ewFFkp3qG1&D
记录生成的密码,后续登录会使用到!!!这个是随机生成的,每个人不一样

4.安装服务,指定服务名称

mysqld --install MYSQL8

在这里插入图片描述

5.启动服务

net start MYSQL8

在这里插入图片描述

6.测试登录并修改密码

默认登录端口是3306所以无需指定端口进行登录,使用之前临时生成的密码继续登录。

mysql -u root -p

在这里插入图片描述
修改密码并刷新权限
修改密码为123456

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

flush privileges;

在这里插入图片描述
mysql8的安装结束。


二、安装MySQL5

跳过安装包下载过程

1.mysql5文件夹中初始化my.ini文件

参考mysql的配置
需要修改三个地方
修改端口,不要为3306了,basedir和datadir修改成mysql5对应路径。

参考我的配置

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[mysqld]
# 设置3305端口
port = 3305
# 设置mysql的安装目录
basedir=D:\SoftWare\work\mysql-5.7.44-winx64\bin
# 设置mysql数据库的数据的存放目录
datadir=D:\SoftWare\work\mysql-5.7.44-winx64\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

2.初始化data文件夹,并记录初始密码

还是熟悉的配方,
管理员身份运行cmd
切换到mysql5的bin目录
执行如下命令

mysqld --initialize --console

记录密码
在这里插入图片描述

3.安装服务,指定服务名称

mysqld --install MYSQL5

在这里插入图片描述

4.启动服务

net start MYSQL5

在这里插入图片描述

5.验证登录并修改密码

此时需要指定3305端口号进行登录,与mysql8不同

mysql -u root -P 3305 -h localhost -p

在这里插入图片描述
修改密码为123456

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

flush privileges;

三、异常情况处理

1.配置的端口被占用导致一直安装失败

3306或者3305端口被占用导致一直报错安装不上

例如:查看3306端口占用情况命令

netstat -aon|findstr "3306"

在这里插入图片描述
如果又被使用则会显示信息,如果端口没有被占用则什么也不会显示。

2.忘记记录初始密码

这个怎么说呢,刚开始安装可能遇到乱七八糟的问题导致重新进入cmd或者重启过电脑等等原因导致忘记记录初始密码。
第一步:停止服务
哪个版本没记住停止哪个啊,别都重新搞一遍了。
安装mysql8时没记录执行下面命令

net stop MYSQL8

安装mysql5时没记录执行下面命令

net stop MYSQL5

第二步:删除服务
安装mysql8时没记录执行下面命令

sc delete MSYQL8

安装mysql5时没记录执行下面命令

sc delete MSYQL5

最后重复执行初始化命令即可
从这个命令开始,这个时候大兄弟你得记录下来啊。剩下命令上边都有。

mysqld --initialize --console

还有一些乱七八糟的报错,有的可能需要安装某个运行库,有的需要把路径的斜杆\改成/的各种报错。如果大家在安装中遇到问题,欢迎大家在评论区进行交流,排坑不易,觉得不错来个三连感谢。