【环境搭建】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

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

相关推荐
许给你的爱13 分钟前
如何在PostgreSQL故障切换后找回丢失的数据
数据库·sql·postgresql
图图淘气20 分钟前
6-14题连接 - 高频 SQL 50 题基础版
数据库·sql
Sunday⅔20 分钟前
ClickHouse-Keeper安装使用
linux·运维·clickhouse
haven-85224 分钟前
postGreSQL关系数据库介绍
数据库
阿维同学1 小时前
今天不看文章,明天变垃圾(明天收费)-----字节数据分析发展过程中所遭遇的挑战
数据库·学习·安全·数据挖掘·数据分析·云计算
薛定谔的菜1 小时前
一、Redis简介
数据库·redis·缓存
终将老去的穷苦程序员1 小时前
将 WSL(Windows Subsystem for Linux)移动到另一个盘上
linux·运维·windows
kaixin_learn_qt_ing1 小时前
QTableView与QSqlQueryModel的简单使用
jvm·数据库·oracle
Theodore_10221 小时前
MySQL 基础知识(4) 聚合函数
数据库·sql·mysql
LongtengGensSupreme1 小时前
C# 中的 App.manifest 文件:优化应用程序配置与权限管理
数据库·ui·c#