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

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

相关推荐
hhhhhhh_hhhhhh_3 分钟前
ubuntu18.04连接不上网络问题
linux·运维·ubuntu
ProtonBase4 分钟前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
冷心笑看丽美人11 分钟前
探秘 DNS 服务器:揭开域名解析的神秘面纱
linux·运维·服务器·dns
小奥超人11 分钟前
RAR压缩算法的文件修复功能详解
windows·经验分享·winrar·办公技巧
wenxiaocsdn16 分钟前
某科技局国产服务器PVE虚拟化技术文档
运维·服务器
深圳安锐科技有限公司1 小时前
首次接触结构安全自动化监测系统,价格高吗?后期维护?
运维·自动化
冬天vs不冷1 小时前
Linux用户与权限管理详解
linux·运维·chrome
凯子坚持 c2 小时前
深入Linux权限体系:守护系统安全的第一道防线
linux·运维·系统安全
摸鱼也很难5 小时前
Docker 镜像加速和配置的分享 && 云服务器搭建beef-xss
运维·docker·容器
云和数据.ChenGuang5 小时前
Django 应用安装脚本 – 如何将应用添加到 INSTALLED_APPS 设置中 原创
数据库·django·sqlite