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

目录

一、安装MySQL8

1.官网下载

下载地址

我下载的都为zip格式的免安装版。


下载完解压到自己指定位置,后期解压路径需要用的

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

在bin同级创建my.ini文件

设置相关内容,必须注意basedir和datadir这两个参数,port 如果设置3306那么下一个mysql5就不能使用3306了

xml 复制代码
[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目录中

执行如下命令

shell 复制代码
mysqld --initialize --console

ewFFkp3qG1&D
记录生成的密码,后续登录会使用到!!!这个是随机生成的,每个人不一样

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

shell 复制代码
mysqld --install MYSQL8

5.启动服务

powershell 复制代码
net start MYSQL8

6.测试登录并修改密码

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

powershell 复制代码
mysql -u root -p

修改密码并刷新权限

修改密码为123456

powershell 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

powershell 复制代码
flush privileges;

mysql8的安装结束。


二、安装MySQL5

跳过安装包下载过程

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

参考mysql的配置

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

参考我的配置

xml 复制代码
[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目录

执行如下命令

powershell 复制代码
mysqld --initialize --console

记录密码

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

powershell 复制代码
mysqld --install MYSQL5

4.启动服务

powershell 复制代码
net start MYSQL5

5.验证登录并修改密码

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

powershell 复制代码
mysql -u root -P 3305 -h localhost -p

修改密码为123456

powershell 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限

powershell 复制代码
flush privileges;

三、异常情况处理

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

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

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

powershell 复制代码
netstat -aon|findstr "3306"

如果又被使用则会显示信息,如果端口没有被占用则什么也不会显示。

2.忘记记录初始密码

这个怎么说呢,刚开始安装可能遇到乱七八糟的问题导致重新进入cmd或者重启过电脑等等原因导致忘记记录初始密码。

第一步:停止服务

哪个版本没记住停止哪个啊,别都重新搞一遍了。

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

powershell 复制代码
net stop MYSQL8

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

powershell 复制代码
net stop MYSQL5

第二步:删除服务

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

powershell 复制代码
sc delete MSYQL8

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

powershell 复制代码
sc delete MSYQL5

最后重复执行初始化命令即可

从这个命令开始,这个时候大兄弟你得记录下来啊。剩下命令上边都有。

powershell 复制代码
mysqld --initialize --console

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

相关推荐
bug攻城狮31 分钟前
SaaS多租户架构实践:字段隔离方案(共享数据库+共享Schema)
mysql·架构·mybatis·springboot·1024程序员节
小丁爱养花41 分钟前
Redis 内部编码/单线程模型/string
数据库·redis·缓存·1024程序员节
l1t1 小时前
利用DuckDB SQL求解集合数学题
数据库·sql·算法·集合·duckdb
Lxt.星翊1 小时前
MySQL(安装和卸载、数据库存储原理图)
linux·运维·windows
苹果醋31 小时前
JAVA面试汇总(二)多线程(五)
运维·vue.js·spring boot·nginx·课程设计
siriuuus1 小时前
MySQL 慢查询日志及优化
mysql·1024程序员节
筵陌1 小时前
MYSQL表的操作
数据库·mysql·1024程序员节
一 乐1 小时前
汽车销售|汽车推荐|基于SprinBoot+vue的新能源汽车个性化推荐系统(源码+数据库+文档)
java·数据库·vue.js·汽车·毕设·汽车个性化推荐
虾说羊1 小时前
最细Maven教程以及Maven私服搭建
java·数据库·maven
RestCloud2 小时前
Kingbase与ETL:如何实现金融级数据库的安全数据同步
数据库