【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 可视化工具可以看到两个数据库均可连接

相关推荐
Sakura_j_h_9 小时前
Python 在定时任务里输出 emoji,UnicodeEncodeError 从哪来
开发语言·字符编码·windows·python·定时任务
程序员塔塔喵11 小时前
【MySQL篇|第一篇】索引失效的情况
数据库·mysql·索引失效
paopaokaka_luck11 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
隔窗听雨眠12 小时前
PostgreSQL单表从Windows迁移到Linux:差异剖析、方案对比与全流程实战
linux·windows·postgresql
paopaokaka_luck13 小时前
心理咨询管理系统(WebSocket实时沟通、基于用户的协同过滤、 ECharts多维分析、 预约业务流程、预约校验与定时处理)
java·vue.js·spring boot·mysql·spring·echarts·1024程序员节
2301_322414280414 小时前
springboot农产品交易平台的设计与实现08055-计算机毕设 原创(免费领源码+部署教程+开发环境)
java·spring boot·redis·mysql·tomcat·maven·mybatis
Helix25015 小时前
Ansible混合环境自动化:Windows与Linux统一配置管理实战
windows·自动化·ansible·playbook·配置管理·winrm·混合环境
ha_lydms15 小时前
AnalyticDB MySQL 技术架构
大数据·hadoop·mysql·adb·spark·dataworks·1024程序员节
Java开发追求者16 小时前
windows快速安装docker
windows·docker·安装·1024程序员节
Random Glow18 小时前
聚簇索引 vs 二级索引:回表、覆盖索引、索引下推
数据库·mysql·性能优化·innodb·1024程序员节·索引优化