【Windows 同时安装 MySQL5 和 MySQL8 - 详细图文教程】

卸载 MySQL

参考文章:

  1. 先管理员方式打开 cmd ,切换到 MySQL 安装目录的 bin 文件夹下,执行如下命令,删除 MySQL 服务

    bash 复制代码
    mysqld --remove mysql
  2. 打开控制面板卸载mysql的所有程序【没有跳过此步骤】

  3. 进入 MySQL 安装目录删除 mysql 文件夹

  4. 删除C盘目录下C:\ProgramData中mysql文件夹【没有跳过此步骤】

  5. win+R 打开运行界面输入 regedit ,回车

    • 删除 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 文件夹
    • 删除 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL 文件夹
    • 删除 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL 文件夹

    第一次可以只删除注册表上述三个信息,如果重装不成功,就要在编辑里查找所有带 mysql 的文件,并全部删除

  6. 环境变量暂时不删,下面安装 MySQL 时就不需要重新编写了

安装 MySQL

  1. 下载
    官网下载需要版本的 MySQL,先解压一个MySQL5版本,稍后安装MySQL8时再解压8.0版本【要不然容易出问题】
  2. 配置环境变量
    • 新建 MySQL 5 和 8 的变量
    • 找到 PATH 变量,新增两个变量的 bin

安装 MySQL5

  1. 创建 my.ini 配置文件

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

    • 管理员方式打开 cmd ,切换到 MySQL5 安装路径下的 bin 文件路径下,输入下述命令,等待生成 data 文件夹

      bash 复制代码
      mysqld --initialize
    • 找到 data 文件夹下的 .err 文件,打开查看生成的临时密码

  3. 安装 MySQL5 服务

    命令行输入如下命令【名字命名为 MYSQL5,指定默认的配置文件为刚才创建的my.ini文件

    bash 复制代码
    mysqld --install MYSQL5 --defaults-file=D:\mysql\mysql-5.7.44-winx64\my.ini
  1. 开启 MySQL5 服务

    命令行输入如下命令

    bash 复制代码
    net start mysql5
  2. 登录 MySQL5 修改密码

    • 登录输入如下命令,密码输入刚刚 .err 文件中的密码

      bash 复制代码
      mysql -u root -P 3305 -h localhost -p
    • 修改密码输入如下命令

      bash 复制代码
      ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你要设置的密码';
    • 刷新权限输入如下命令

      bash 复制代码
      flush privileges
    • 输入 quit 退出


安装 MySQL8

  1. 创建 my.ini 配置文件

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

    • 管理员方式打开 cmd ,切换到 MySQL8 安装路径下的 bin 文件路径下,输入下述命令,等待生成 data 文件夹

      bash 复制代码
      mysqld --initialize
    • 找到 data 文件夹下的 .err 文件,打开查看生成的临时密码

  3. 安装 MySQL8 服务

    命令行输入如下命令【名字命名为 MYSQL8,指定默认的配置文件为刚才创建的my.ini文件

    bash 复制代码
    mysqld --install MYSQL8 --defaults-file=D:\mysql\mysql-8.0.30-winx64\my.ini
  4. 开启 MySQL8 服务

    命令行输入如下命令

    bash 复制代码
    net start mysql8
  5. 登录 MySQL8 修改密码

    • 登录输入如下命令,密码输入刚刚 .err 文件中的密码

      bash 复制代码
      mysql -u root -P 3308 -h localhost -p
    • 修改密码输入如下命令

      bash 复制代码
      ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你要设置的密码';
    • 刷新权限输入如下命令

      bash 复制代码
      flush privileges
    • 输入 quit 退出


查看服务

使用 idea 可视化工具可以看到两个数据库均可连接

相关推荐
小飞侠在吗4 小时前
Windows 下 Nginx 访问 127.0.0.1 报 50x 错误:根因是路径里 \t 被当成 Tab
运维·windows·nginx
菀亓6 小时前
ubuntu系统mysql安装
mysql
程序员贺加贝6 小时前
别被 saveBatch 骗了:一次 MyBatis-Plus 批量插入性能排查
mysql
l1258656 小时前
# RAG上线评估指标体系:六大核心指标与压测实战全解析
数据库·人工智能·python·mysql·langchain·milvus
宠友信息6 小时前
IM系统开发技术路线分析,即时通讯源码助力快速搭建聊天应用
java·spring boot·redis·websocket·mysql·uni-app·vue
__zRainy__7 小时前
Node系列 · 数据库:单表查询
数据库·后端·mysql·node.js
水饺编程8 小时前
第5章,[Win32 章节] :贝塞尔样条曲线(一)
c语言·c++·windows·visual studio
辻弋2018 小时前
一键优化电源计划、游戏模式、独显强制、禁用后台录制——DeltaForceBooster专治三角洲行动卡顿掉帧,所有改动可一键还原
服务器·数据库·windows·游戏·电脑·php
言乐69 小时前
Python实现自动拉人脚本示例
开发语言·windows·python·django·pygame
AIMath~10 小时前
MVCC 与乐观锁,RR的本质
mysql